这很烦人。
我有一个像这样的目录结构
-lib
--some jar files
-packageName
--Main.java
--SomeOtherPackage
--SomeOtherJavaClass.java
Main.java导入SomeOtherPackage
。两个java文件都使用lib中的jar。
我所做的是在CLASSPATH中独立添加jar文件。然后运行为: javac packageName / Main.java
但是它给出了找不到包的错误SomeOtherPackage
。它不应该自动实现依赖并构建SomeOtherPackage
吗?上述案例的javac命令和类路径是什么?
由于
答案 0 :(得分:4)
通常的做法是将包根添加到类路径中。
当您已经在软件包根目录中时,请使用-cp .
。 E.g。
cd /path/to/all/packages
javac -cp . packageName/Main.java
如果您还要包含JAR文件,请使用;
(或* nix,:
)作为类路径路径分隔符:
javac -cp .;lib/file.jar packageName/Main.java
要节省重复所有shell命令输入的时间,请使用.bat
(或* nix a .sh
)文件。或者只是一个IDE,如果你已经熟悉java / javac等等。
答案 1 :(得分:0)
您需要将packageName添加到CLASSPATH,以便它可以找到SomeOtherPackage