У меня есть задача Ant, которая выполняется в maven с помощью maven-antrun-plugin. Этот TAS использует XmlTask для чтения некоторых значений из файла XML. Задача не выполняется из-за ошибки загрузки класса, поскольку определение этой задачи находится в отдельной банке. Как я могу добавить эту банку в путь к классам? Я попытался добавить эту банку в каталог lib как Maven, так и Ant, но все же получаю эту ошибку.
Ниже приведен раздел моего pom.xml, в котором ошибка:
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>versionConsistency</id>
<phase>package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<taskdef name = "xmltask" classname = "com.oopsconsultancy.xmltask.ant.XmlTask"/>
<xmltask source = "Upgrade.xml">
<copy path = "component/versions/version/@number" property = "fVer" />
</xmltask>
<property name = "pVer" value = "${project.version}" />
<script language = "javascript">
<![CDATA[
fVer = project.getProperty('fVer');
pVer = project.getProperty('pVer');
if ( fVer == pVer){
project.setProperty('isVerConsistent','true');
}else if (pVer.substring(0, pVer.search("-")) == fVer){
project.setProperty('isVerConsistent','true');
}else{
project.setProperty('isVerConsistent','false');
var fail = project.createTask("fail");
fail.setMessage("Project version and version in Upgrade.xml do not match");
fail.perform();
}
]]>
</script>
</target>
</configuration>
</execution>
</executions>
Тем не менее, я бы рекомендовал просто использовать встроенную задачу Ant xmlproperty, если это возможно, а также задачу Ant condition вместо этого блока javascript. Это сделало бы код намного проще.
Спасибо. Использовал тег Ant xmlproperty. У меня есть еще код в теге сценария, который не может обрабатываться Ant, поэтому я переместил часть условия также сюда.


Вам нужно добавить его как зависимость в свой pom maven.apache.org/plugins-archives/maven-antrun-plugin-1.6/…