My開発メモ

自己流build.xmlの記述(Ant)

いろいろとやってみたのだが、今のところこれが一番いいと思う。

build.xml

<?xml version="1.0" ?>
<project name="sukkiriShop" default="compile" basedir=".">
  <property name="src.dir" value="./src" />
  <property name="dest.dir" value="./WEB-INF/classes" />
  <property name="lib.dir" value="/opt/apache-tomcat-9.0.31/lib" />
  <property name="build.dir" value="./WEB-INF/classes" />

  <path id="classpath">
    <pathelement location="${lib.dir}/servlet-api.jar" />
    <pathelement location="${lib.dir}/jsp-api.jar" />
    <pathelement location="${lib.dir}/h2-1.4.199.jar" />
  </path>
  
  <target name="compile" depends="make_build.dir">
    <javac includeAntRuntime="false"
           encoding="UTF-8"
           srcdir="${src.dir}"
           destdir="${dest.dir}"
           classpathref="classpath"
           />
  </target>

  <target name="make_build.dir">
    <mkdir dir="${build.dir}" />
  </target>
  
  <target name="clean">
    <delete dir="${build.dir}" />
  </target>
</project>

使い方

$ ant

make_build.dir をするのだが、もう作成済みなら何もしない。

$ ant clean

で、build.dir すなわち、./WEB-INF/classes を削除する。

Ubuntu と Windows の両方でビルドするので、こうした方が使いやすい。

コンパイラオプション(2022.05.26 追記)

例えば、以下のようにコンパイラオプションを記述する。

...(略)...
  <target name="compile" depends="make_build.dir">
    <javac includeAntRuntime="false"
           encoding="UTF-8"
           srcdir="${src.dir}"
           destdir="${dest.dir}">
      <compilerarg value="-Xlint:unchecked" />     <== ココ
    </javac>
  </target>
...(略)...

参考

カテゴリー: Java, memo

タグ: ant, build.xml, java

カウント: 213