Mój program maven java używa wtyczki maven-antrun do wykonania skryptu ant deploy.xml, który wdraża moją aplikację. Plik deploy.xml używa zadania <if>
i wydaje się, że to powoduje problem;Korzystanie z zadania antcontrib <if> za pomocą wtyczki maven-antrun
[info] Wykonywanie zadań
[taskdef] Nie można wczytać definicje z zasobów netto/sf/antcontrib/antlib.xml. Nie można go znaleźć.wdrożenie:
[INFO] --------------------------------------- ---------------------------------
[BŁĄD] BUILD ERROR
[INFO] ----- -------------------------------------------------- -----------------
[INFO] Wystąpił wyjątek Ant BuildException: Wystąpił następujący błąd podczas wykonywania tej linii:
E: \ My_Workspace \ xxxxxx \ xxxxxx \ xxxxxxx \ deploy.xml: 24: Problem: nie udało się utworzyć zadania lub wpisać, jeśli:
Przyczyna: Nazwa jest niezdefiniowana.
Czynność: sprawdź pisownię.
Czynność: Sprawdź, czy zadeklarowano niestandardowe zadania/typy.
Czynność: Sprawdź, czy zostały dokonane jakiekolwiek deklaracje </<macrodef>.
Oto konfiguracja wtyczki antrun z mojej pom;
<plugin>
<inherited>false</inherited>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>remote-deploy</id>
<phase>install</phase>
<configuration>
<tasks>
<taskdef resource="net/sf/antcontrib/antcontrib.properties" classpathref="maven.plugin.classpath"/>
<property name="compile_classpath" refid="maven.compile.classpath" />
<property name="runtime_classpath" refid="maven.runtime.classpath" />
<property name="plugin_classpath" refid="maven.plugin.classpath" />
<echo message="compile classpath: ${compile_classpath}"/>
<echo message="runtime classpath: ${runtime_classpath}"/>
<echo message="plugin classpath: ${plugin_classpath}"/>
<ant antfile="${basedir}/deploy.xml">
<target name="deploy" />
</ant>
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>ant-contrib</groupId>
<artifactId>ant-contrib</artifactId>
<version>1.0b3</version>
</dependency>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant</artifactId>
<version>1.7.1</version>
</dependency>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant-jsch</artifactId>
<version>1.7.1</version>
</dependency>
</dependencies>
</plugin>
.. i tutaj znajduje się odpowiednia sekcja z mojego pliku deploy.xml;
<target name="deploy" if="deploy">
<if> <!-- line 24 -->
<and>
Dlaczego patrzę w moim repo maven widzę ant-contrib/ant-contrib/1.0b3/ant-contrib-1.0b3.jar
i kiedy patrzę wewnątrz słoika widzę net/sf/antcontrib/antcontrib.properties
więc nie ma problemu.
Kiedy sprawdzenia wartości maven.compile.classpath
, maven.compile.classpath
i maven.compile.classpath
Nie widzę żadnego odniesienia do antcontrib
, to może być problem? Dlaczego nie pojawiają się, gdy antcontrib
jest zdefiniowany jako zależność?
https://stackoverflow.com/questions/4368243/maven-antrun-with-sequential-ant-contrib-fails-to-run/45958355#45958355 –