java - list .mf : reference Main-class in jar file

标签 java jar manifest executable-jar

我正在制作一个可运行的 jar,其中我的主类是 eclipse 的 JarRsrcLoader。

这是我的包结构:

org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader

还有我的 list :

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 内的目录结构:

enter image description here

当我尝试使用以下命令从命令行运行 jar 时:

java -jar output.jar

我得到:

Error: Could not find or load main class org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader

有人能看出我哪里出了问题吗?当我将 org 文件夹放在与 output.jar 相同的目录中时,它运行正常。我希望从 jar 中找到它,这样就没有外部依赖项。谢谢

更新

类文件位于 jar 中:

enter image description here

最佳答案

虽然这个问题很久以前就被问过,但这对我有用

尝试在工作区中创建一个包,例如 com.eclipse.jdt.internal.jarinjarloader 并放置所有文件 JarRsrcLoader.java、RsrcURLConnection.java、RsrcURLStreamHandler.java 和 RsrcURLStreamHandlerFactory.java(可以从 google 下载)。 然后编写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 

关于java - list .mf : reference Main-class in jar file,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21761664/

相关文章:

java - ClassCastException,为什么我的保存按钮在单击时没有将选中的复选框保存到我的数据库中?

java - java中的排序点(2d,3d等)

java - 通过可调用语句从 Java 调用存储过程时出错

android - 如何在没有 Eclipse 的情况下将 JAR 包含在 APK 中?

java - Crontab + ubuntu + java 不工作

android - 列出应用程序的 Activity 和 Intent 过滤器?

android - 特定 flavor +类型组合的 list

java - 如何检查 FX 应用程序线程策略违规

java - 如何避免父pom受到maven依赖?

c++ - Visual Studio 2005 - C++ - 什么控制 list 创建