java为何编译没包的程序用java和javac命令 T.java有包的程序用java和javac命令 -d . T.java

使用java和javac命令命令编译带包名的类然后再使用java命令运行编译后的class文件很容易报找不到或无法加载主类,原因是使用java和javac命令编译java文件时没有添加-d选项使每一级包编译为对应嘚文件夹

1、如果java文件中有中文必须在java和javac命令编译的时候用-encoding选项指定编码,java运行的时候不用再-encoding了如:

选项值既可以加引号,也可以不加引号

2、如果java文件中有引用其他jar包内的文件必须编译和运行的使用使用-classpath或-cp(classpath的缩写)选项指定寻找的jar包(多个jar包之间用分号分割,最好指定┅下用点号表示的当前目录否则运行时会找不到当前类的class文件),如:

选项值既可以加引号也可以不加引号

2.1、写程序的时候,会使用import语呴来引入一些已经写好的类设置CLASSPATH就是告诉编译器要如何去哪里找引用的类;sun 为我们提供了一些额外的丰富的类包,一个是 dt.jar一个是 tools.jar,这兩个 jar 包都位于%JAVA_HOME%\lib 目录下所以通常我们都会把这两个 jar 包加到我们的 classpath

在jdk1.6以后,不用设定CLASSPATH仍然能够找到jdk的类库,编译基本的JAVA程序

简单的问题但是长期依赖于IDE工具,基本的java命令生疏了将此次的过程简单记述如下。

需求:要把AES类编译成class文件

步骤:1)将该类中所有引入的外部类jar包整理,比如:

 
 




我要回帖

更多关于 java和javac命令 的文章

 

随机推荐