2010-07-15 4 views
0

내가 자바 6. 여기Eclipse가 Java 1.5에서 내 코드를 컴파일하지 않는 이유는 무엇입니까? 의

이클립스 3.5.2 및 JDK를 설치 한 이클립스 내 설치된 JRE를

alt text http://img806.imageshack.us/img806/3345/eclipsejres.jpg

내가 개미 빌드 파일을 컴파일하려고

, 일부 보인다 이것과는 자바 1.5 지정과 같은 :

<target name="compile" depends="build-common, init" description="Compile files. "> 
    <javac srcdir="${src_dir}" destdir="${build_dir}" debug="true" target="1.5" source="1.5"> 
     <classpath path="${tomcat_home}/lib/servlet-api.jar;${tomcat_home}/lib/log4j-1.2.15.jar;/usr/local/lib/portlet-api-1.0.jar;." /> 
    </javac> 
</target> 

을하지만 컴파일 할 때, 콘솔 창에 다음과 같은 오류가 표시

compile: 
    [javac] Compiling 1 source file to H:\jephperro\portlets\build 
    [javac] javac: invalid target release: 1.5 
    [javac] Usage: javac <options> <source files> 
    [javac] where possible options include: 
    [javac] -g      Generate all debugging info 
    [javac] -g:none     Generate no debugging info 
    [javac] -g:{lines,vars,source} Generate only some debugging info 
    [javac] -nowarn     Generate no warnings 
    [javac] -verbose .... 

BUILD FAILED 
H:\jephperro\portlets\CourseList-build.xml:25: Compile failed; see the compiler error output for details. 

Total time: 531 milliseconds 

Eclipse의 문제점은 무엇입니까?

+0

Eclipse 컴파일러를 사용하여 천천히 마이그레이션하므로 전체 JDK가 아닌 JRE를 사용할 수 있습니다. –

답변

1

see the compiler error output for details.

1.5 JDK보다 최신 버전의 Java를 사용하여 컴파일 한 라이브러리에 종속 된 것 같습니다.

실제로 1.5 JDK는 어디에 있습니까? 내가 보는 모든 것은 JRE뿐입니다. 내 생각 엔 download a version 1.5 JDK이 필요하고 이클립스에 추가해야한다.

+0

"설치된 JRE"목록에는 몇 개의 JDK가 있습니다. 그래도 문제에 손가락을 대고 싶습니다. –

+0

-target 1.5를 사용하기 위해 1.5 JDK가 필요하지 않습니다. –

+0

1.6을 설치했는데 왜 1.5 JDK를 설치해야합니까? –

0

java -version에 해당하는 작업을 개미 빌드 파일에 만들면 Eclipse에서 시작한 개미가 어떤 Java 컴파일러를 사용하고 있는지 알 수 있습니다.

힌트 : 기본 JRE는 1.6 JRE입니다. 코드를 실행 중이지만 컴파일 할 수는 없습니다. 외부 컴파일에 필요한 마술은 JDK에만 포함됩니다 (예 : ant). Eclipse는 점진적인 Java 컴파일러를 자체 코드에 포함시켜이 문제를 해결합니다 (마술).

몇 년 후, Eclipse, ant 및 JDK가 어떻게 상호 운용되는지 완전히 이해하지 못했기 때문에 약간의 실험을해야 할 수도 있습니다.

0

AFAIR Eclipse는 Ant 파일이 실행될 때 자체 내부 Java 컴파일러를 사용하지 않습니다. 로컬 경로를 확인하고 Ant가 호출하는 javac를 찾으십시오.

0

'javac : invalid target release : 1.5'컴파일 오류는 일반적으로 소스/바이너리 수준의 비 호환성으로 인해 발생합니다. JDK 1.4 이하 버전을 사용하여 JDK 5의 소스 레벨을 컴파일하려고한다는 것을 의미합니다.

Eclipse는 내장 Java 컴파일러를 사용합니다. 컴파일러가 실제로 따르는 레벨은 프로젝트 설정에 따라 다릅니다. 프로젝트 당 Java 수준을 구성하거나 전역 수준에서 기본값으로 설정할 수 있습니다.

메뉴 표시 줄에서 Window-> Preferences를 선택하십시오. 자바 -> 컴파일러 환경 설정을 선택하십시오. 컴파일러 준수 수준을 5.0으로 설정합니다.

0

Saifuddin과 다른 사람들이 언급했듯이이 오류는 원하는 버전의 Java 컴파일러를 사용하지 않았을 가능성이 큽니다. 설치된 JRE에는 DevsuiteHome_1에있는 JDK가 있으며 어떤 버전인지는 알 수 없습니다. 아마 개미가 그것을 사용하고 있을까요?

매우 쉽게 확인하실 수 있습니다. Eclipse 내에서 ant를 실행 중입니다. Ant는 작업 공간과 다를 수있는 자체 구성 설정을 가지고 있습니다.실행시 Ant가 사용하는 버전을 확인하려면 다음 단계를 따르십시오 :

실행 -> 외부 도구 -> 외부 도구 구성 -> ant 빌드 파일을 클릭하십시오. JRE 탭을 선택하십시오.) 사용중인 런타임을 확인하십시오.