antからmavenを使って依存ライブラリの解決。
maven-ant-tasksを使って出来た。こんな感じのbuild.xmlを書けばいい。
<?xml version="1.0"?> <project xmlns:artifact="urn:maven-artifact-ant" name="maven-ant-tasks-learning" default="maven-retrieve" basedir="."> <property name="lib.dir" value="lib" /> <property name="lib.src.dir" value="lib/sources" /> <target name="maven-retrieve"> <path id="maven-ant-tasks.classpath" path="lib-for-build/maven-ant-tasks-2.0.9.jar" /> <typedef resource="org/apache/maven/artifact/ant/antlib.xml" uri="urn:maven-artifact-ant" classpathref="maven-ant-tasks.classpath" /> <artifact:dependencies filesetId="dependency.fileset" sourcesFilesetId="sources.dependency.fileset" versionsId="dependency.versions"> <!-- maven形式で依存ライブラリを記述する --> <dependency groupid="com.google.collections" artifactid="google-collections" version="0.8" /> </artifact:dependencies> <!-- 不要なjarが紛れてしまう可能性があるので、一度綺麗にする。 --> <delete failonerror="no"> <fileset dir="${lib.dir}" /> </delete> <copy todir="${lib.dir}"> <fileset refid="dependency.fileset" /> <!-- maven式のフォルダ階層で拾ってくるので、フラットに展開する必要がある為 ただ展開されたjarにバージョン番号をつける方法が分からない。 --> <mapper classpathref="maven-ant-tasks.classpath" classname="org.apache.maven.artifact.ant.VersionMapper" from="${dependency.versions}" to="flatten" /> </copy> <copy todir="${lib.src.dir}"> <fileset refid="dependency.fileset" /> <mapper classpathref="maven-ant-tasks.classpath" classname="org.apache.maven.artifact.ant.VersionMapper" from="${dependency.versions}" to="flatten" /> </copy> </target> </project>