build.xml build.xmlとMaven Mavenに敬意をもって に敬意をもって さよなら さよなら
May 27, 2015
build.xmlbuild.xmlととMavenMavenに敬意をもってに敬意をもって
さよならさよなら
<if> <equals arg1="${foo}" arg2="bar" /> <then> <echo message="The value of property foo is bar" /> </then> <else> <echo message="The value of property foo is not bar" /> </else></if>
<for param="file"> <path> <fileset dir="${test.dir}/mains" includes="*.cpp"/> </path> <sequential> <propertyregex override="yes" property="program" input="@{file}" regexp=".*/([^\.]*)\.cpp" replace="\1"/> <mkdir dir="${obj.dir}/${program}"/> <mkdir dir="${build.bin.dir}"/> <cc link="executable" objdir="${obj.dir}/${program}" outfile="${build.bin.dir}/${program}"> <compiler refid="compiler.options"/> <fileset file="@{file}"/> <linker refid="linker-libs"/> </cc> </sequential></for>
jar: META-INF/plexus/components.xml
デフォルトライフサイクル
>> 乙もうお前に用はない
Gradleって何に使えるの?
日々のタスク自動化JavaやGroovyとかScalaとかその他のビルド
Better Ant
Better Maven
なんにでも使えます
直感的で書きやすいビルドスクリプト
豊富で使いやすいサポート機能
既存のシステムから容易に移行可能
直感的で書きやすいビルドスクリプト
内部DSL + 宣言的ビルド
GradleGantBuildrJRakeRakeSCons...
豊富で使いやすいサポート機能
依存関係の管理
プラグインシステム
面倒くさいところは作ってくれます
Maven風...というか、
デフォルトライフサイクル
マルチプロジェクトGradleラッパーUP-TO-DATEプロファイラデーモンプロセスIDE連携...
既存のシステムから容易に移行可能
Antタスク
Antプロジェクト
Maven、Ivyリポジトリ
既存のディレクトリ構造
書きやすいビルドスクリプト
豊富なビルドサポート機能
既存のシステムから容易に移行可能
おまけ:IDEサポート
ご清聴ありがとうございました