Details
-
Type:
Sub-task
-
Status:
Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 2.0.7, 2.0.9
-
Fix Version/s: None
-
Component/s: Plugins and Lifecycle
-
Labels:None
-
Environment:Windows XP SP2, JSDK 1.5.1_12
-
Complexity:Intermediate
Description
I have multimodule project, in one of the child pom files defined custom profile, which updates DB via separate Ant build file:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>populate-db</id>
<phase>process-classes</phase>
<configuration>
<tasks>
<ant antfile="${basedir}/data_build.xml" target="populate.db" inheritAll="true" inheritRefs="true">
</ant>
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant</artifactId>
<version>1.7.0</version>
</dependency>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant-nodeps</artifactId>
<version>1.7.0</version>
</dependency>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant-parent</artifactId>
<version>1.7.0</version>
</dependency>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant-launcher</artifactId>
<version>1.7.0</version>
</dependency>
</dependencies>
</plugin>
</plugins>
Anyway build seems to load ant 1.6.5 in parent pom file (it has some plugins, that require Ant 1.6.5), so I am getting this:
Embedded error: The following error occurred while executing this line:
data_build.xml:39: The <sql> type doesn't support the "expandproperties" attribute.
"expandproperties" attribute was added in Ant 1.7. I have no Ant 1.6 installed in my system, only jars in Maven repository. env.ANT_HOME is set to Ant 1.7, PATH variable also contains Ant 1.7.
I've tried to add any variants of the ant 1.7 packages to task dependecies with no luck.
Any ideas?
Sorry, one more add. For now I evade this issue with help of listed below block, but I suppose it's not the correct way Maven should operate:
<property environment="env"/>
<java fork="true" classname="org.apache.tools.ant.launch.Launcher" dir="${basedir}"
failonerror="true" resultproperty="result.ant.property">
<classpath>
<pathelement path="${env.ANT_HOME}/lib/ant-launcher.jar"/>
<fileset dir="${settings.localRepository}/mysql/mysql-connector-java" includes="*/.jar"/>
</classpath>
<sysproperty key="ant.home" value="${env.ANT_HOME}"/>
<arg line="-f ${basedir}/data_build.xml"/>
<arg line="populate.db"/>
</java>