【问题标题】:failed to load main-class manifest attribute from abc.jar无法从 abc.jar 加载主类清单属性
【发布时间】:2010-12-07 13:42:09
【问题描述】:
嗨,
我使用 eclipse 创建了一个可运行的 .jar 文件并使用 jdk1.4.2 编译它,我能够在 Windows 上完美运行它,但是每当我在 unix 上运行它时,它都会显示“无法从 abc 加载主类清单属性.jar" 为什么会这样
请帮忙
苏拉布
【问题讨论】:
标签:
java
eclipse
unix
jar
executable-jar
【解决方案1】:
我通常避免使用可执行的 jar。假设,我们有一个类com.example.MyClass 有main 方法,那么“可执行jar”的清单(myapp.jar)需要这一行
Main-Class: com.example.MyClass
然后就可以这样启动应用了
java -jar myapp.jar
除了一些类路径的烦恼之外,这与
非常相似
java -cp myapp.jar com.example.MyClass
“烦恼”:如果使用-jar 选项运行应用程序,则类路径必须在清单中定义 - 它会忽略任何CLASSPATH 条目或-cp 属性。因此,如果您有依赖项,则必须将它们从 manifests 类路径属性复制并粘贴到 -cp 属性:
java -cp myapp.jar;<other libs> com.example.MyClass