我正在开发一个项目,我需要自动编译.java文件'(所以不使用Eclipse) 现在我在编译源代码所需的库时遇到了一些麻烦。
问题是编译后的代码扩展了一个库中的类。 我已经添加了类路径,并确保库实际位于正确的目录中。 但它似乎无法运行。
我收到一条错误消息,指出无法找到或加载该类。 我修改了测试源,因此它没有扩展。然后它确实有效。
如何使编译的类能够实际使用类路径中的库中的类?
我用它来编译:
javac -d /bin -cp kit.jar src/com/indieveloper/kittest/*.java
类文件编译时没有错误,也在正确的包层次结构中编译
这是清单:
Manifest-Version: 1.0
Class-Path: .;lib/kit.jar
Created-By: Me
Main-Class: com.indieveloper.kittest.Main
带有jar的文件夹lib位于最终打包的.jar最终的同一文件夹中 我使用此代码构建的:
jar cvfm test.jar manifest.txt -C bin/ .
最终罐子的内部对我来说似乎没问题:
META-INF/
META-INF/MANIFEST.MF
com/
com/indieveloper/
com/indieveloper/kittest/
com/indieveloper/kittest/Main.class
清单仍然正确(在“刺激”期间没有任何改变清单) 我也尝试将jar文件夹与jar放在最后一个jar中,但这是一次无望的尝试..
确切错误:
java -jar test.jar
Error: Could not find or load main class com.indieveloper.kittest.Main
有谁知道我可以做到这一点吗?