【发布时间】:2022-01-01 23:23:00
【问题描述】:
我正在尝试编译(从命令行)一个导入我自己的另一个包的 java 包。我正在关注tutorial online,但当我尝试编译最终的 java 文件 (CallPackage.java) 时似乎出现错误。
这是文件结构:
+ test_directory (contains CallPackage.java)
-> importpackage
-> subpackage (contains HelloWorld.java)
这里是 CallPackage.java:
/// CallPackage.java
import importpackage.subpackage.*;
class CallPackage{
public static void main(String[] args){
HelloWorld h2=new HelloWorld();
h2.show();
}
}
这里是 HelloWorld.java:
///HelloWorld.java
package importpackage.subpackage;
public class HelloWorld {
public void show(){
System.out.println("This is the function of the class HelloWorld!!");
}
}
尝试的步骤
- 进入子包,用
$javac HelloWorld.java编译HelloWorld.java。 - 转到 test_directory 并使用
$javac CallPackage.java编译 CallPackage.java。
这给了我最后一个命令的错误:
CallPackage.java:1: package importpackage.subpackage does not exist
import importpackage.subpackage.*;
^
CallPackage.java:4: cannot find symbol
symbol : class HelloWorld
location: class CallPackage
HelloWorld h2=new HelloWorld();
^
CallPackage.java:4: cannot find symbol
symbol : class HelloWorld
location: class CallPackage
HelloWorld h2=new HelloWorld();
^
3 errors
如何编译这两个包?非常感谢您的帮助!
【问题讨论】:
-
这将对您有所帮助。 thejavageek.com/2013/07/21/…
-
如果你使用像Eclipse这样的IDE来执行java程序会更好,因为它可以自动创建包。
标签: java command-line compilation package javac