2013-07-02 5 views
1

NetBeans의 튜토리얼을 사용하여 java로 프로그램을 만들었으며 Windows에서 잘 작동합니다.jar를 실행하는 주 클래스를 찾을 수 없습니다.

을 :

java -jar NumberAddition.jar

출력은로 끝이 명령을 실행에서

Exception in thread "main" java.lang.UnsupportedClassVersionError: JVMCFRE003 bad major version; class=my/numberaddition/NumberAdditionUI, offset=6

: 나는 리눅스 (레드햇)에서 같은 .jar를 실행하려고 할 때, 나는 다음과 같은 예외가

Could not find the main class: my.numberaddition.NumberAdditionUI. Program will exit.

t 그의 예는 here입니다. 내가 무엇이 누락 되었습니까?

편집 : 운영체제간에 이식성을 위해 추가해야 할 것이 있습니까?

편집, 답변 : 가능한 중복 링크를 남긴 댓글 작성자에게 감사드립니다. 이러한 연구를 통해 나는 리눅스 환경에서 JRE가 원래 프로그램 (1.7)을 컴파일 한 버전보다 오래된 버전 (1.6)임을 알 수 있었다.

+1

가능한 중복 : HTTP : // 유래 .com/questions/14926402/unsupportedclassversionerror-jvmcfre003-bad-major-version-in-websphere-as-7 –

+0

RedHat Linux에서 OpenJDK를 사용하고 계십니까? –

+1

가능한 중복 : http : // stackoverflow.com/questions/6066103/what-of-the-reason-for-unsupportedclassversionerror –

답변

2

RedHat 상자에서 Java 버전을 확인하십시오.

java -version 

당신이보고있는 예외는 JDK의 최신 버전으로 컴파일 된 바이트 코드를 실행하려고 JVM에 관련이있다.

Java 버전을 Oracle에서 다운로드하거나 yum을 사용하여 RedHat에서 업데이트하면 컴파일 한 내용과 적합한 JDK 버전을 얻을 수 있습니다.

코드가 최신 언어 향상 기능에 의존하지 않는 경우 RedHat에서 소프트웨어를 다시 작성하십시오.

메인 클래스를 찾을 수 없습니다 : my.numberaddition.NumberAdditionUI 출력은로 끝나는 -jar NumberAddition.jar

자바 :이 명령을 실행

+0

그게 다야, 고마워! – Bts

0

. 프로그램이 종료됩니다. my.numberaddition 경우 : 자바 -jar, 메인 클래스의 필요에 항아리를 실행하는 것은 메인 클래스에 매니페스트 파일 또는 전체 경로에서 언급되는 동안

는 예를 들어 클래스 경로

에서 jar 파일을 넣어 지정해야합니다. MainClass가

자바와 같은 메인 클래스 ... 실행 -cp NumberAddition.jar my.numberaddition.MainClass

관련 문제