엑스코드:'-source 1.3에서는 제네릭이 지원되지 않습니다' 컴파일러 오류가 발생합니까?

StackOverflow https://stackoverflow.com/questions/109948

문제

간단한 질문입니다:

저는 CS 학부생이고 Eclipse 및 Net Beans IDE에 대해서만 경험이 있습니다.저는 최근에 Macbook을 구입했으며 테스트하기 위해 Xcode에서 최근 학교 프로젝트를 다시 컴파일하고 싶었습니다.ArrayList의 새 인스턴스를 선언하는 줄 바로 다음입니다.

dictionary = new ArrayList<String>(); 

다음 오류가 발생합니다. -source 1.3에서는 제네릭이 지원되지 않습니다..

문제가 무엇인지에 대해 누군가 조언을 해줄 수 있는지 궁금합니다.동일한 프로젝트가 동일한 시스템의 Eclipse에서 컴파일됩니다.저는 OSX 10.5.4와 Java 1.5.0_13을 실행하고 있습니다.

감사합니다.

도움이 되었습니까?

해결책

Xcode의 Java 지원은 더 이상 사용되지 않으며 유지 관리되지 않습니다.이는 Project Builder에서 상속된 "이전" 빌드 시스템을 여전히 사용하는 유일한 Xcode입니다.Apple조차도 대신 Eclipse를 사용할 것을 제안합니다.Java의 경우 Eclipse와 NetBeans는 모두 Mac에서 잘 작동합니다.기본 Mac 프로그래밍을 시도하려면 Xcode가 적합한 Objective-C 및 Cocoa를 사용하세요.

즉, 문제는 javac가 제네릭이 없는 Java 1.3을 대상으로 한다는 것입니다.Ant 빌드 파일(build.xml)에서 javac 참조를 다음과 같이 수정할 수 있습니다.

    <target name="compile" depends="init" description="Compile code">
    <mkdir dir="${bin}"/>
    <javac deprecation="on" srcdir="${src}" destdir="${bin}"
           source="1.3" target="1.2"

"소스"와 "대상"을 "1.5"로 변경합니다.

다른 팁

제네릭은 Java 5에 도입되었으므로 -source 1.3 옵션과 함께 제네릭을 사용할 수 없습니다.

build.xml 파일은 다음 위치에 있습니다.

/Developer/Library/XCode/Project Templates/Java/Java Tool/build.xml

(Java 도구를 자신만의 프로젝트로 교체하세요).

당신이 찾는다면 source="XX" target="YY" 30행에서 XX와 YY를 원하는 값으로 변경하면 이전 게시물에서 설명한 것처럼 상황이 더 좋아집니다.

건배,

피터

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top