我正在尝试为主Java程序创建一个库函数包,但我遇到了一些问题。
我对Java软件包知之甚少,我正在网上看一些纪录片。
我已经创建了我的目录
./Program/Program.java
./Program/TestFunc.java
./Program/classes/library/
TestFunc.java的内容是
package library;
public class TestFunc {
public void message01() {
System.out.println("called message01");
}
public void message02() {
System.out.println("called message02");
}
}
我按照文档
中的内容编译了它javac -d ./Program/classes TestFunc.java
哪个给了我
./Program/classes/library/TestFunc.class
然后我尝试在Program.java中调用它
import library.*;
public class Program {
public static void main(String[] args) {
System.out.println("Starting Script");
}
}
当我尝试使用
进行编译时javac -d ./Program/classes Program.java
我收到错误
package library does not exist
为什么会这样?
答案 0 :(得分:3)
您已使用-d
说明了输出的位置,但您还没有告诉它同一目录也应该用于输入在类路径上。使用-cp
选项:
javac -d classes -cp classes Program.java
(目前尚不清楚您是否尝试从在内{/ 1}}目录或其上方执行此操作 - 您的源文件名似乎位于Program
目录中,但是您正在指定输出目录,就像您在上面的目录中一样...)