我在执行编译的jar文件时遇到以下错误。我已经重新安装了我的java,但我的问题还没有解决。
Failed to load Main-class Manifest Attribute from D:\Tools\Lodable_Creation\dist\Lodable_Creation.jar
目前通过MANIFEST.MF
文件看起来像。
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.8.1
Created-By: 1.6.0-b105 (Sun Microsystems Inc.)
Main-Class: main
X-COMMENT: Main-Class will be added automatically by build
我正在使用Netbeans 6.9.1 IDE。
答案 0 :(得分:3)
为您的班级使用套餐。确保你的类看起来像这样(注意包和公共类):
package com.foo;
public class Main {
public static void main(String[] args) {
}
}
之后您可以指定Main-Class
:
Main-Class: com.foo.Main
答案 1 :(得分:2)
正如adarshr所说,JVM无法找到该类,因为它需要Manifest文件的Main-Class属性中的完全限定名称。
实际上,没有必要指定主文件。您可以将JAR文件作为类路径,并提供类的完全限定名称以使用java运行它。
假设您的JAR是myJar.jar,而完全限定的主文件是com.user.Main。然后从命令行转到具有JAR文件的目录,并提供: -
java -classpath myJar.jar com.user.Main
这将运行Main类。您还需要在类路径中提供在Main类中使用(导入)的类(或JAR)。
有关详细信息,请参阅this链接。
答案 2 :(得分:0)
当我使用JDK(在我的情况下是1.7)开发项目并且安装的JRE是旧版本(1.6)时,我遇到了这个错误。尝试更新您的JRE或更改所使用的JDK(如果可能)以匹配您的JRE版本。