2012-08-15 5 views
1

내 작업 컴퓨터에서 JDK 1.7이 설치된 Windows 7 x64가 설치되어 있습니다. Netbeans에서 프로젝트를 만들었고 모든 것이 잘되었습니다. 그런 다음 JDK 1.6을 실행하는 Mac OS X 10.6을 실행중인 집 컴퓨터에 프로젝트를 복사했습니다. 지원되지 않는 major.minor 버전 .51에 대한 오류 메시지와 함께 빌드가 실패합니다. 인터넷 검색 및 검색은 JDK 버전 불일치로 인한 것이라고 결론 내립니다. 오라클은 JDK 1.7을 Mac OS X 10.6에 설치할 수 없기 때문에 Mac에서 JDK 1.6을 사용할 수 있습니다.지원되지 않는 major.minor 버전 .51 및 Java 1.6에서 Java 1.7 코드 실행

1.7 코드를 가져 와서 JDK 1.6을 실행하는 Mac OS X 10.6에서 빌드하고 실행할 수있는 방법이 있습니까? 또는 내 코드를 JDK 1.7 시스템으로 다시 가져 와서 1.6으로 호환성을 다운 그레이드 할 수있는 방법이 있습니까? 기본적으로 내 작업 컴퓨터와 집 컴퓨터에서 실행되는 코드가 필요합니다.

+0

어떻게 지을 거니? 넷빈즈, 이클립스, 핸드 – MadProgrammer

+0

Netbeans를 통해 구축 중 – user785179

+1

시스템에 [openJdk7] (http://code.google.com/p/openjdk-osx-build/)을 설치하기 만하면됩니다. 내 맥북 프로에 그것을 했어 그것은 매력처럼 실행됩니다. –

답변

2

이 경우 Windows 상자에 Java 1.6이 설치되어 있어야합니다. 1.7 & 1.6과 일부 API 차이점 사이의 구문 비 호환성이 있습니다.

Netbeans에서 프로젝트 노드를 마우스 오른쪽 단추로 클릭하고 "Properties"를 선택하십시오. 특성 대화 상자에서 소스를 선택하십시오. 대화 상자 아래쪽에 "Source/Binary Format"이 표시되고 드롭 다운에서 "JDK 6"을 선택하십시오.

"라이브러리"를 선택하십시오. 대화 상자 상단에 "Java Platform"이 표시되고 드롭 다운 목록에서 "JDK 1.6"을 선택해야합니다.

찾을 수없는 경우 "플랫폼 관리"를 클릭하십시오. "플랫폼 추가"를 클릭하고 Java 6 (일반적으로 C : \ Program Files \ Java)을 설치 한 위치로 이동하여 선택하십시오. "마침"을 클릭하십시오. 이제

당신이 찾을 수 있어야합니다 그것을

업데이트로 의견에서

, 당신은 단순히 "소스/바이너리 형식"옵션을 변경 멀리받을 수 있습니다 "SU-" ~ 1.6

+0

감사합니다. 프로젝트의 속성을 수정하고 소스/바이너리 형식을 1.6으로 설정했습니다! JDK 1.7에서 같은 1.6 코드를 실행할 때 문제가 발생하지 않는다고 가정합니다. 최악의 경우, 직장에서 JDK 1.7을 제거하고 JDK 1.6으로 되돌릴 수 있습니다. – user785179

+0

1.7은 1.6 바이너리와 호환 될 수 있어야하며 다른 방법으로는 사용할 수 없습니다.) - 1.7 기능이나 API 향상 기능을 사용할 수 없으면 1.6 API를 준수해야합니다. – MadProgrammer

3

새로운 1.7 구문/라이브러리를 사용하지 않는 경우, 당신은 더 JDK 1.6

를 클래스를 구축하는 문제 또한

javac -source 1.6 -target 1.6 MyClass.java 
을 실행하는 것처럼, 1.7 컴파일러와 함께 뭔가를 1.6 호환의 .class를 생성 할 수 있어야하지 않는다

또는 Eclipse를 사용하는 경우 설정 대화 상자에서이를 설정할 수 있습니다.

답변에 따르면 두 가지 방법이 도움이 될 수 있습니다.


편집 :

내 대답을 수정.

-source는 지적에 대해 스튜어트 마크 1.6

감사를 할 수있다!

+0

내 1.7 코드를 1.6으로 다운 그레이드 할 수 있습니까? 그러면 JDK 1.6을 사용하는 Mac OS X 10.6에서 코드를 실행할 수 있습니까? Java 소스 코드를 Windows 및 Mac 컴퓨터에서 작동시키고 두 시스템에서 모두 빌드 할 수 있기를 바랍니다. – user785179

+2

아니, 작동하지 않습니다. 7의 언어 기능에는 라이브러리 종속성이 있으므로 Java 7 기능과 대상 6을 사용할 수 없습니다. 원본과 대상을 모두 1.6으로 설정해야합니다. –

3

NetBeans의 프로젝트 속성을 열고 플랫폼 및 언어 수준을 6 (또는 1.6)으로 설정하십시오. 그런 다음 깨끗이하고 지어 라. Java 7 기능을 사용할 수는 없습니다. Windows에서 기존 Java 7을 설치하면이 작업을 수행 할 수 있습니다. Java 6을 설치하지 않아도됩니다.

또는 10.6 실행 Mac에 비공식 OpenJDK 7 빌드를 설치할 수 있습니다.다운로드를 위해 여기를보십시오 :

http://code.google.com/p/openjdk-osx-build/

관련 문제