0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Antのbuild.xmlの最小構成

0
Posted at

大量の変数はいらない

色々と変数を置きがちなAntですが、むしろよくわからなくなります。
変数は最低限の方がいいと思います。

ここでは変数なし!

Antのbuild.xmlの最小構成 (mainメソッド実行編)

javaのmainメソッドを実行する

この例ではpkg.Aaaのmainメソッドを実行する。

<?xml version="1.0" encoding="UTF-8"?>
<project default="run" basedir=".."> <!-- 「projectName/ant/build.xml」の構成を想定しているので、とりあえず親パスをbasedirにしておく。 -->
  <target name="run">
    <mkdir dir="build"> <!-- 「projectName/build」などにコンパイル先を作成 -->
    <javac src="src" destdir="build" includeantruntime="false" encoding="UTF-8"> <!-- 作成した場所にビルド -->
      <classpath>
        <fileset dir="lib" includes="**/*.jar"/> <!-- ライブラリは大体projectName/libディレクトリにあると思うのでビルド時にそれをクラスパスに通す -->
      </classpath>
    </javac>
    <copy todir="build"> <!-- classファイル以外もコピーしてくる。これは忘れないように。src配下にjavaの設定ファイルとかを置いたとき詰みます。やっておいた方が後悔しづらい。 -->
      <fileset dir="src">
        <exclue name="**/*.java"/>
      </fileset>
    </copy>
    <java classname="pkg.Aaa" fork="true" failonerror="true"> <!-- 実行 -->
      <jvmarg value="-Dfile.encoding=UTF-8"/>
      <classpath>
        <pathelement path="ant/build"/> <!-- classファイルを渡す-->
        <fileset dir="lib" includes="**/*.jar"/> <!-- ライブラリは大体projectName/libディレクトリにあると思うので実行時にそれをクラスパスに通す -->
      </classpath>
    </java>

目的:「eclipseでメインメソッドにフォーカス当ててCtrl+F11押してください」とか言えない…ダサい…手順として成り立たない…というときに使う

Antのbuild.xmlの最小構成 (実行可能Jar作成編)

jarを作る

この例ではAaa.jarを作成する。
java -jar Aaa.jarpkg.Aaaのメインメソッドを動かせる。

<?xml version="1.0" encoding="UTF-8"?>
<project default="run" basedir=".."> <!-- 「projectName/ant/build.xml」の構成を想定しているので、とりあえず親パスをbasedirにしておく。 -->
  <taget name="run">
    <mkdir dir="build"/> <!-- 「projectName/build」などにコンパイル先を作成 -->
    <javac srcdir="src" destdir="build" includeantruntime="false" encoding="UTF-8"> <!-- 作成した場所にビルド -->
      <classpath>
        <fileset dir="lib" includes="**/*.jar"/> <!-- ライブラリは大体projectName/libディレクトリにあると思うのでビルド時にそれをクラスパスに通す -->
      </classpath>
    </javac>
    <copy todir="build"> <!-- classファイル以外もコピーしてくる。これは忘れないように。src配下にjavaの設定ファイルとかを置いたとき詰みます。やっておいた方が後悔しづらい。 -->
      <fileset dir="src">
        <exclue name="**/*.java"/>
      </fileset>
    </copy>
    <jar basedir="build" destfile="dist/Aaa.jar"> <!-- 「projectName/dist」フォルダなどに投入 -->
      <manifest>
        <attribute name="Main-Class" value="pkg.Aaa"/> <!-- 実行可能ファイルのとき(java -jar Xxx.jarとかで起動させたいとき)だけ必要 -->
      </manifest>
    </jar>
  </target>
</project>

目的:「eclipseでエクスポートしてください」とか言えない…ダサい…手順として成り立たない…というときに使う

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?