2012-02-27 2 views
4

컴파일 된 jar 파일을 실행하는 중 다음 오류가 발생합니다. 내 자바를 다시 설치했지만 내 문제는 아직 해결되지 않았습니다.Main-class Manifest 속성을로드하지 못했습니다.

MANIFEST.MF 파일의 모습을 현재에 의해

Failed to load Main-class Manifest Attribute from 
D:\Tools\Lodable_Creation\dist\Lodable_Creation.jar 
.

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

http://stackoverflow.com/questions/2591516/why-its-failed-to-load-main-class-manifest-attribute-from-jar-file에 연결할 수 있습니다. – Raghuram

+0

내 매니페스트의 모습은 어떠합니까? ? Main-class 속성을 지정하려고 했습니까? –

+1

JAR 파일을 winzip/7zip과 같은 도구로 열어서 질문에'META-INF/Manifest.mf' 내용을 붙이십시오. –

답변

3

클래스에 맞는 패키지를 사용하십시오.

adarshr 제안으로
Main-Class: com.foo.Main 
2

, JVM은 할 수 없습니다 : 당신은 그래서 Main-Class을 지정할 수 있습니다

package com.foo; 

public class Main { 

    public static void main(String[] args) { 
    } 
} 

후 : 클래스 이런 식으로 뭔가 (패키지 및 공용 클래스를 통지)를 보이는 있는지 확인 Manifest 파일의 Main-Class 속성에 정규화 된 이름이 필요하므로 클래스를 찾으십시오.

실제로 실제로 주 파일을 지정할 필요는 없습니다. JAR 파일을 클래스 경로로 제공하고 Java를 사용하여 실행하는 클래스의 완전한 이름을 제공 할 수 있습니다.

JAR이 myJar.jar이고 정규화 된 주 파일이 com.user.Main이라고합니다. 그런 다음 명령 줄에서 JAR 파일이있는 디렉토리로 이동하여 다음을 제공하십시오. -

java -classpath myJar.jar com.user.Main 

그러면 Main 클래스가 실행됩니다. Main 클래스에서 사용 (가져 오기) 된 클래스 패스에 클래스 (또는 JAR)를 제공해야합니다.

자세한 내용은 this 링크를 참조하십시오.

0

JDK (내 경우 1.7)를 사용하여 프로젝트를 개발할 때이 오류가 발생했으며 설치된 JRE가 이전 버전 (1.6)이었습니다. 가능한 경우 JRE를 업데이트하거나 JRE 버전과 일치하도록 사용되는 JDK를 변경하십시오.