[Yanel-commits] rev 41808 - in public/yanel/trunk/src:
build/resource-types
realms/welcome-admin/yanel/resources/update-webapp
guillaume at wyona.com
guillaume at wyona.com
Thu Mar 5 17:01:14 CET 2009
Author: guillaume
Date: 2009-03-05 17:01:14 +0100 (Thu, 05 Mar 2009)
New Revision: 41808
Modified:
public/yanel/trunk/src/build/resource-types/resource-type.build.xml
public/yanel/trunk/src/realms/welcome-admin/yanel/resources/update-webapp/build.xml
Log:
Removed duplicate Ant code.
This also gives us for free:
- `build -f ...` support
- copying of classpath standard resource files (resource.xml, yanel-htdocs/**, htdocs/**) into the delivered JAR.
Alos borrowed the already-generic "install-jar" target from there and put into the commons.
Issue: 6898
Modified: public/yanel/trunk/src/build/resource-types/resource-type.build.xml
===================================================================
--- public/yanel/trunk/src/build/resource-types/resource-type.build.xml 2009-03-05 15:40:05 UTC (rev 41807)
+++ public/yanel/trunk/src/build/resource-types/resource-type.build.xml 2009-03-05 16:01:14 UTC (rev 41808)
@@ -4,6 +4,7 @@
>
<!-- the default task seems not to be imported at least with Ant 1.6.5
default="compile"
+ default="install-jar"
-->
<dirname property="resource.home.dir" file="${ant.file}"/>
@@ -76,4 +77,20 @@
<mapper type="flatten"/>
</copy>
</target>
+
+ <target name="install-jar" description="Place jar file for this resource into local maven repository" depends="init, clean, compile" xmlns:artifact="antlib:org.apache.maven.artifact.ant">
+ <copy file="src/build/pom.xml" tofile="build/lib/pom.xml"/>
+
+ <replace file="build/lib/pom.xml" value="${resource.version}">
+ <replacetoken>@VERSION@</replacetoken>
+ </replace>
+ <replace file="build/lib/pom.xml" value="${resource.name}">
+ <replacetoken>@NAME@</replacetoken>
+ </replace>
+
+ <artifact:pom id="maven.project.core" file="build/lib/pom.xml"/>
+ <artifact:install file="build/lib/yanel-resource-${resource.name}-${resource.version}.jar">
+ <pom refid="maven.project.core"/>
+ </artifact:install>
+ </target>
</project>
Modified: public/yanel/trunk/src/realms/welcome-admin/yanel/resources/update-webapp/build.xml
===================================================================
--- public/yanel/trunk/src/realms/welcome-admin/yanel/resources/update-webapp/build.xml 2009-03-05 15:40:05 UTC (rev 41807)
+++ public/yanel/trunk/src/realms/welcome-admin/yanel/resources/update-webapp/build.xml 2009-03-05 16:01:14 UTC (rev 41808)
@@ -1,71 +1,9 @@
-<?xml version="1.0"?>
+<project name="yanel-update-webapp-resource">
+ <import file="${yanel.source.home}/src/build/resource-types/resource-type.build.xml"/>
-<project name="yanel-resource" default="compile">
-<!--
-<project name="yanel-resource" default="install-jar">
--->
-
- <import file="src/build/dependencies.xml"/>
-
- <target name="init" description="Initialize build" depends="dependencies">
- <echo>Initialize build</echo>
-
- <dirname property="resource.home.dir" file="${ant.file}"/>
- <echo>Resource Home Directory: ${resource.home.dir}</echo>
-
- <property file="${resource.home.dir}/src/build/local.build.properties"/>
- <property file="${resource.home.dir}/src/build/build.properties"/>
-
- <path id="classpath">
- <pathelement path="${maven2.cp}"/>
- </path>
- <property name="resource.build.dir" value="${resource.home.dir}/build"/>
- <property name="resource.classes.dir" value="${resource.build.dir}/classes"/>
- <property name="resource.lib.dir" value="${resource.build.dir}/lib"/>
- <property name="resource.java.dir" value="${resource.home.dir}/src/java"/>
- </target>
-
- <target name="compile" description="Compile Java classes" depends="init">
-
- <mkdir dir="${resource.classes.dir}"/>
- <javac srcdir="${resource.java.dir}" destdir="${resource.classes.dir}"
- classpathref="classpath"
- debug="true"
- />
- <mkdir dir="${resource.lib.dir}"/>
- <jar destfile="${resource.lib.dir}/yanel-resource-${resource.name}-${resource.version}.jar"
- basedir="${resource.classes.dir}"
- />
- </target>
-
- <target name="clean" depends="init">
- <delete dir="${resource.build.dir}"/>
- </target>
-
- <target name="copy-dependencies" depends="init">
- <copy todir="${build.dir}/webapps/${servlet.context.prefix}/WEB-INF/lib">
- <fileset refid="maven2.resource.fileset"/>
- <mapper type="flatten"/>
- </copy>
-
+ <target name="copy-dependencies" depends="yanel-resource.copy-dependencies">
<copy todir="${build.dir}/webapps/${servlet.context.prefix}/WEB-INF/classes">
<fileset dir="config" includes="update_*.properties"/>
</copy>
</target>
-
- <target name="install-jar" description="Place jar file for this resource into local maven repository" depends="init, clean, compile" xmlns:artifact="antlib:org.apache.maven.artifact.ant">
- <copy file="src/build/pom.xml" tofile="build/lib/pom.xml"/>
-
- <replace file="build/lib/pom.xml" value="${resource.version}">
- <replacetoken>@VERSION@</replacetoken>
- </replace>
- <replace file="build/lib/pom.xml" value="${resource.name}">
- <replacetoken>@NAME@</replacetoken>
- </replace>
-
- <artifact:pom id="maven.project.core" file="build/lib/pom.xml"/>
- <artifact:install file="build/lib/yanel-resource-${resource.name}-${resource.version}.jar">
- <pom refid="maven.project.core"/>
- </artifact:install>
- </target>
</project>
More information about the Yanel-commits
mailing list