I want to define property or want to use maven.plugin.classpath and maven.dependency.classpath in my build.xml.
How can i do it ?
Sample code is as below...
<property> </property> is not working and not able to read the values from my build.xml so please explain me how can i do it ?
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2</version>
<executions>
<execution>
<id>install</id>
<phase>install</phase>
<goals>
<goal>exec</goal>
</goals>
</execution>
</executions>
<configuration>
<property name="plugin_classpath" refid="maven.plugin.classpath" />
<property name="maven_dependency_classpath" refid="maven.dependency.classpath" />
<executable>antscript.bat</executable> <!-- ant -f build.xml build -->
</configuration>
</plugin>
Hi Sean Patrick Floyd,
Yes i tried using maven-antrun-plugin but i am not able to setup JDK 1.4.2 version in it. I am trying to specify all possible way to apply JDK version 1.4.2 but it's still taking tools.jar or JDK version, Which maven.bat file is using (jdk 1.5)
I was using following code in MAVEN-ANTRUN-PLUGIN as below code.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<id>install</id>
<phase>install</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<source>${java-version}</source>
<target>${java-version}</target>
<compilerVersion>${java-version}</compilerVersion>
<executable>${java.1.4.2.home}/bin/javac</executable>
<target>
<property name="plugin_classpath" refid="maven.plugin.classpath" />
<property name="maven_dependency_classpath" refid="maven.dependency.classpath" />
<ant antfile="ant_build.xml" />
</target>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>sun.jdk</groupId>
<artifactId>tools</artifactId>
<version>1.4.2</version>
<scope>system</scope>
<systemPath>${java.1.4.2.home}/lib/tools.jar</systemPath>
</dependency>
<dependency>
<groupId>com.sun</groupId>
<artifactId>rt</artifactId>
<version>${java-version}</version>
<scope>system</scope>
<systemPath>${java.1.4.2.home}/jre/lib/rt.jar</systemPath>
</dependency>
</dependencies>
</plugin>
That's why i choose exec GOAL where my SYSTEM JAVA_HOME is 1.4.2 and it's able to execute it if i have all dependencies which i needed.
Please help me out.
Thanks.
0
A
답변
1
maven.plugin.classpath
등 내 EXEC 목표에 변수로 maven.dependency.classpath을 통과에만 maven-antrun-plugin에 정의 된 변수 싶다. exec 플러그인은 이러한 값을 알지 못합니다. 또한 외부의 .bat 파일을 호출하여 새로운 프로세스를 시작하는 것처럼 처음부터 그렇게 할 수는 없습니다.
내가 당신이라면 antrun 플러그인을 사용합니다. 자세한 내용은 the usage page을 참조하십시오.
업데이트 : 좋아, 지금은 문제를 참조하십시오. antrun은 동일한 VM 내에서 작동하므로 다른 JDK를 사용할 수 없습니다. 따라서 JDK 사용을 전환해야하거나 실제로 exec-maven-plugin을 사용해야합니다. 후자의 경우,
dependency:build-classpath -DoutputFile=someFile.txt
을 사용하고 개미면에서는 someFile.txt
의 내용을 속성으로 읽고 그로부터 클래스 경로를 생성해야합니다. 또는 명령 줄 args에 use the %classpath
variable placeholder을 사용할 수 있습니다.
0
예 정답은 JDK 1.4.2를 지원하는 MAVEN 버전을 사용하는 것입니다. 그래서 JDK 1.4.2를 지원하는 apache-maven-2.0.11을 사용해야합니다.
답장을 보내 주셔서 감사합니다.
안녕하세요 Sean Patrick Floyd - 내 수정 된 질문을 확인하십시오. – user886614
@ user886614 Java 환경이 필요한 Ant 작업을 호출하기 위해 maven-antrun-plugin을 사용할 수 있습니까? antrun 플러그인에서 사용할 수있는 maven 클래스 경로 등록 정보를 사용하여 작업에 종속 jar 위치를 제공 할 수 있습니다. –