2015-02-02 3 views
3

axis2-ant-plugin-1.6.0.jar\org\apache\axis2\tool\ant\AntCodegenTask을 사용하여 WSDL2Java 작업을 수행하는 앤트 작업을 실행하려고합니다.Ant javac task errs out : [javac] 경고 : [options] bootstrap 클래스 경로가 -source와 함께 설정되지 않았습니다. 1.6

<property name="java6.boot.classpath" value="${env.JAVA6_BOOT_CLASSES}"/> 

그리고 C:\dev\java\64-bit\jdk-1.6.0_45\binJAVA6_BOOT_CLASSES 환경 변수가 설정되어 : 개미 스크립트의 상단에

, 나는 java6.boot.classpath을 정의합니다.

[javac] warning: [options] bootstrap class path not set in conjunction with -source 1.6 

어떤 아이디어 :

<!-- dist.jar target --> 
<target name="dist.jar" depends="generate" 
    description="Creates the web services client jar file"> 
    <echo>Compiling web services client code</echo> 

    <javac srcdir="${project.javapath}" destdir="${build}" 
      source="1.6" target="1.6" 
      debug="true" debuglevel="lines,vars,source" 
      excludes="com/company/junit/**" 
      bootclasspath="${java6.boot.classpath}" 
      includeantruntime="false"> 

     <classpath refid="compile.classpath" /> 
    </javac> 

    <echo>Creating ${jarname}.jar</echo> 
    <jar destfile="${dist}/${jarname}.jar" basedir="${build}" /> 
    <echo>${jarname}.jar created</echo> 
</target> 

가 실행하려고 내가 직함이 오류가 발생하지만, 다음과 같이

관련 개미 대상은? Java 1.6의 부트 클래스 경로를 적절하게 설정 한 것 같지만 개미는 동의하지 않는 것 같습니다.

답변

5

이것은 Ant가 아니지만 경고를 내보내는 JDK의 javac입니다.

Java 7의 javac 및 -source를 7보다 작은 값으로 사용하는 경우 javac 경고 메시지가 표시되므로 부트 스트랩 클래스 경로가 이전 rt.jar을 가리 키도록 설정해야합니다. 결과가 사용할 수있는 유일한 방법이기 때문에 이전 VM

https://blogs.oracle.com/darcy/entry/bootclasspath_older_source

당신이 그것을 무시하고 심지어

<compilerarg value="-Xlint:-options"/> 

으로 억제 또는 당신이 정말로 이전 JVM을 설치하고 rt.jar을 포함해야합니다 (그에 따라 bootclasspath에 적응할 수 있도록 이것은 단지 경고입니다 , bin 폴더가 아닙니다.

+0

그래서 jdk1.6의'lib' 폴더를 가리 키도록 java6 환경 변수를 변경하면, 충분하다? 내가 스크립트를 읽는 방법은'bootclasspath' 인자를 제공하여 java6 jdk를 사용하도록 명시 적으로 말한 것입니다 ... – liltitus27

+2

'rt.jar'를 직접 가리 키거나 와일드 카드'lib/* '를 사용해야합니다. .jar'. –

2

개미 build.xml 파일에는 Java 6을 가리키는 등록 정보가 생성됩니다. rt.jar

<path id="boot.classpath" location="C:/Program Files (x86)/Java/jre6/lib/rt.jar" />

javac 작업에 참조 :

<javac srcdir="${src}" bootclasspathref="boot.classpath" classpathref="classpath" includeantruntime="false" destdir="${build}" source="1.6" target="1.6" />

당신은 직접 이것은이다 bootclasspath 속성

1

And I have the JAVA6_BOOT_CLASSES environment variable set to C:\dev\java\64-bit\jdk-1.6.0_45\bin.

를 사용 javac 작업에 bootclasspath에 지정할 수 있습니다 문제. rt.jar이 들어있는 디렉토리를 가리 키도록 bootclasspath를 설정하십시오. 그것은 다음과 같아야합니다 : C : \ dev \ java \ 64-bit \ jdk-1.6.0_45 \ jre \ lib