我对java很新,并试图让基础知识失败。其中一个是处理package
,我尝试使用package HelpPack;
将一个类实现到另一个类中,并在使用javac -d HelpPackage A.java
时抛出错误javac: file not found: A.java
。谢谢你的帮助
//B.java
package HelpPack;
public class B{
public String name(){
return "Class b";
}
}
//A.java
package HelpPack;
public class A{
public static void main(String[] args){
B b = new B();
System.out.println(b.name());
}
}
答案 0 :(得分:1)
-d specifies where the class files will go. Your java files need to be in that directory too and command should be javac HelpPack/*java
答案 1 :(得分:1)
您的包需要与实际目录匹配。
因此,您的班级A.java
应位于HelpPack
目录中。
根据 documentation :
-d directory
设置类文件的目标目录。该目录必须已存在; javac不会创建它。如果一个类是apackage的一部分,javac将该类文件放在反映该类的子目录中 包名称,根据需要创建目录。例如,如果你 指定-d C:\ myclasses,该类名为com.mypackage.MyClass, 然后调用类文件 C:\ myclasses \ COM \ mypackage中\ MyClass.class。 如果未指定-d,则javac会将每个类文件放在与生成它的源文件相同的目录中。
注意:-d指定的目录不会自动添加到用户类路径中。
答案 2 :(得分:1)