| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168 |
- <?xml version="1.0"?>
- <project name="Modbus4J" basedir="." default="jar" xmlns:mvn="antlib:org.apache.maven.artifact.ant">
- <taskdef resource="net/sf/antcontrib/antlib.xml" classpath="lib-opt/ant-contrib-1.0b3.jar" />
- <typedef resource="org/apache/maven/artifact/ant/antlib.xml" uri="antlib:org.apache.maven.artifact.ant" classpath="lib-opt/maven-ant-tasks-2.1.3.jar" />
- <mvn:pom file="pom.xml" id="maven-pom" />
- <mvn:dependencies filesetId="maven-deps" type="jar" pomRefId="maven-pom" />
- <mvn:dependencies filesetId="maven-deps-runtime" type="jar" pomRefId="maven-pom" useScope="runtime" />
- <property name="fullName" value="${maven-pom.artifactId}-${maven-pom.version}" />
- <path id="master-classpath">
- <fileset refid="maven-deps" />
- <fileset refid="maven-deps-runtime" />
- <fileset dir="lib">
- <include name="*.jar" />
- </fileset>
- <pathelement path="target/java" />
- </path>
- <target name="clean" description="Clean the target area">
- <delete dir="target/java" />
- </target>
- <target name="compile" description="Compile main source tree java files">
- <mkdir dir="target/java" />
- <available property="lib.exists" file="lib" type="dir" />
- <if>
- <isset property="lib.exists" />
- <then>
- </then>
- <else>
- <mkdir dir="lib" />
- </else>
- </if>
- <javac destdir="target/java"
- target="1.7"
- source="1.7"
- debug="true"
- debuglevel="lines,vars,source"
- deprecation="false"
- optimize="false"
- failonerror="true"
- includeantruntime="false">
- <src path="src" />
- <classpath refid="master-classpath" />
- </javac>
- </target>
- <target name="jar"
- depends="clean,compile"
- description="Create a jar file of the compiled classes">
- <delete file="target/release/${fullName}.jar" />
- <delete file="target/java/MANIFEST.MF" />
- <tstamp>
- <format property="TODAY" pattern="yyyy-MM-dd HH:mm:ss" />
- </tstamp>
- <manifest file="target/java/MANIFEST.MF">
- <attribute name="Built-By" value="${vendor}" />
- <attribute name="Build-Date" value="${TODAY}" />
- <attribute name="Version" value="${maven-pom.version}" />
- </manifest>
- <mkdir dir="target/java/lib" />
- <mkdir dir="target/java/META-INF" />
- <if>
- <istrue value="${includeSource}" />
- <then>
- <copy todir="target/java/src" preservelastmodified="true">
- <fileset dir="src">
- <include name="**/*.*" />
- </fileset>
- </copy>
- </then>
- </if>
- <available property="scripts.exists" file="scripts" type="dir" />
- <if>
- <isset property="scripts.exists" />
- <then>
- <copy todir="target/java/bin" preservelastmodified="true">
- <fileset dir="scripts">
- <include name="**/*" />
- </fileset>
- </copy>
- </then>
- </if>
- <jar destfile="target/release/${fullName}.jar"
- manifest="target/java/MANIFEST.MF">
- <fileset dir="target/java">
- <include name="**/*.class" />
- <include name="**/*.java" />
- <exclude name="MANIFEST.MF" />
- <include name="META-INF/*.*" />
- </fileset>
- </jar>
- </target>
- <target name="docs" description="Generate Java Doc">
- <mkdir dir="target/java/doc" />
- <javadoc sourcepath="src"
- destdir="target/java/doc"
- classpathref="master-classpath" >
- <doctitle><![CDATA[<h1>Modbus4j</h1>]]></doctitle>
- <bottom><![CDATA[<i>Copyright © 2014 Infinite Automation Systems. All Rights Reserved.</i>]]></bottom>
- </javadoc>
- </target>
- <target name="jar-doc" depends="docs" description="Create a jar file of the javadocs">
- <delete file="target/release/${fullName}-doc.jar" />
- <jar destfile="target/release/${fullName}-doc.jar">
- <fileset dir="target/java/doc">
- <include name="**/*" />
- </fileset>
- </jar>
- </target>
- <target name="jar-src" description="Create a jar file of the sources">
- <delete file="target/release/${fullName}-src.jar" />
- <jar destfile="target/release/${fullName}-src.jar">
- <fileset dir="src">
- <include name="**/*.java" />
- </fileset>
- </jar>
- </target>
- <target name="maven-deploy"
- depends="jar,jar-src,jar-doc"
- description="Install library to Maven repository located at ${maven.local}">
- <if>
- <isset property="maven.local" />
- <then>
- <mvn:deploy file="target/release/${fullName}.jar">
- <remoterepository url="file://${maven.local}" />
- <pom refid="maven-pom" />
- <attach file="target/release/${fullName}-src.jar"
- type="jar"
- classifier="sources" />
- <attach file="target/release/${fullName}-doc.jar"
- type="jar"
- classifier="javadoc" />
- </mvn:deploy>
- </then>
- </if>
- <mvn:install file="target/release/${fullName}.jar">
- <pom refid="maven-pom" />
- <attach file="target/release/${fullName}-src.jar"
- type="jar"
- classifier="sources" />
- <attach file="target/release/${fullName}-doc.jar"
- type="jar"
- classifier="javadoc" />
- </mvn:install>
- </target>
- </project>
|