您的位置 首页 java

Java带包结构命令行编译

用记事本编写一个带有包结构的简单 java 程序,注意文件名和类名一致

启动DOS

进入文件所在路径,找到我们所创建的文件。

在文件所在文件夹内执行编译

查看所在文件夹内文件,多出一个TestPackage.class

执行java命令

出现”找不到或无法加载主类”的提示

该如何解决?

先删除之前生成的class文件

使用”javac -d . TestPackage.java”重新编译

查看文件

进入testPackage文件目录,出现我们的class文件

执行运行命令

执行成功。

“javac -d . TestPackage.java”和” javac TestPackage.java”有什么区别?

javac <srcFile>

javac -d . <srcFile>

-d参数用于指定生成class文件的位置,.(点号)表示当前目录。

-d参数的作用是指定生成java包的根目录,”-d .” 表示在当前目录上编译生成java包。

如果省略了-d,则仅仅是在当前目录生成的class文件。大多数情况都是编译生成java,尽量使用-d参数

那为什么有了包结构之后就可以运行程序呢?

因为在TestPackage.java中有包声明testPackage,当执行TestPackage.java 源文件 时java虚拟机首先会在TestPackage.java当前目录寻找字节码文件,虽然找到了,但是因为在TestPackage.java中有包声明,java虚拟机紧接着去包目录下寻找有没有TestPackage.class字节码文件,没有找到就会提示错误。

文章来源:智云一二三科技

文章标题:Java带包结构命令行编译

文章地址:https://www.zhihuclub.com/184140.shtml

关于作者: 智云科技

热门文章

网站地图