我正在制作一个可运行的jar,其主要类是eclipse的JarRsrcLoader。
这是我的包结构:
org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader
我的清单:
Manifest-Version: 1.0
Rsrc-Class-Path: ./selenium-server-standalone-2.39.0.jar
Class-Path: .
Rsrc-Main-Class: test.Main
Main-Class: org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader
我的jar中的目录结构:
当我尝试使用以下命令行从命令行运行jar时
java -jar output.jar
我明白了:
Error: Could not find or load main class org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader
谁能看到我哪里出错了?当我将org
文件夹放在与output.jar
相同的目录中时,它运行正常。我希望从jar中找到它,以便没有外部依赖。感谢
更新
类文件在jar中:
答案 0 :(得分:0)
尝试使用其他几种Uber jar工具:
答案 1 :(得分:0)
虽然长时间回答这个问题,但这对我有用
尝试在工作区中创建一个包,如com.eclipse.jdt.internal.jarinjarloader,并放置所有文件JarRsrcLoader.java,RsrcURLConnection.java,RsrcURLStreamHandler.java和RsrcURLStreamHandlerFactory.java,可以从谷歌下载。 然后如图所示编写了Manifest
Build-Jdk: 1.7.0_55
Class-Path: .
Rsrc-Main-Class: com.abc.Master
Main-Class: com.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader
Rsrc-Class-Path: ./ lib/xyz.jar