我有两节课:
MyApplication 库
该库已被编译为Library.class,并且源代码不再可用。我现在正在尝试从源代码编译MyApplication。MyApplication取决于库。该库的软件包名称为org.myCompany。我尝试将我的类路径设置为以下内容:
set CLASSPATH=C:\java\project\org\myCompany\Library.class;.
产生以下javac编译器错误消息:
MyApplication.java:33: cannot find symbol symbol: class Library location: class MyApplication Library theLibrary = new Library();
所以我将类路径更改为:
set CLASSPATH=C:\java\project\;.
产生完全相同的错误消息。
如何设置Windows类路径以包含Library.class文件?是否应该指向包含org \ myCompany子文件夹的文件夹?还是直接指向类文件?还是到包含类文件的文件夹中(即使该类在一个包中并且属于一个子文件夹)?
我在设置命令后执行了echo%CLASSPATH%,并且正确设置了类路径。我还制作了一个ant build.xml文件,并遇到了同样的问题。实际上,ant -verbose确认我的类路径已正确设置。
您不能像这样在类路径中添加单个类。您有3个解决方案:
对于您的问题,第三选择更干净:通常将外部依赖项打包到jar文件中。