S2JDBC-Genの紹介 その8 − ビルドファイルの雛形
S2JDBC-Genを使ってみたいんだけど、ビルドファイルを作成するのが面倒という方は、下のビルドファイルを雛形にしてください。
この雛形では、S2JDBCに必要なjar、S2JDBC-Genのjar、FreeMarkerのjarをlibディレクトリに置いてもらうことを想定しています。
gen-entityターゲットを実行すると、エンティティクラスだけでなくサービスクラスなども一緒に一括で作成されます。
Windows上のEclipse3.4でAntを実行する場合は注意しなければいけないことがあります。注意点についてはAntタスクの実行を参考にしてください。
追記:gen-ddlしたときに、エンティティクラスからサービスクラス等を作成するような定義に修正してみました。
<project name="sample" default="gen-ddl" basedir="."> <property name="classpathdir" value="build/classes"/> <property name="libdir" value="lib"/> <property name="rootpackagename" value="examples"/> <property name="entitypackagename" value="entity"/> <property name="javafiledestdir" value="src/main/java"/> <property name="testjavafiledestdir" value="src/test/java"/> <property name="javafileencoding" value="UTF-8"/> <property name="env" value="ut"/> <property name="jdbcmanagername" value="jdbcManager"/> <path id="classpath"> <pathelement location="${classpathdir}"/> <fileset dir="${libdir}"/> </path> <taskdef resource="s2jdbc-gen-task.properties" classpathref="classpath"/> <target name="gen-entity"> <gen-entity rootpackagename="${rootpackagename}" entitypackagename="${entitypackagename}" javafiledestdir="${javafiledestdir}" javafileencoding="${javafileencoding}" env="${env}" jdbcmanagername="${jdbcmanagername}" classpathref="classpath" /> <javac srcdir="${javafiledestdir}" destdir="${classpathdir}" encoding="${javafileencoding}" fork="true" debug="on" classpathref="classpath"> <include name="${rootpackagename}/${entitypackagename}/**"/> </javac> <gen-test classpathdir="${classpathdir}" rootpackagename="${rootpackagename}" entitypackagename="${entitypackagename}" javafiledestdir="${testjavafiledestdir}" javafileencoding="${javafileencoding}" env="${env}" jdbcmanagername="${jdbcmanagername}" classpathref="classpath" /> <gen-condition classpathdir="${classpathdir}" rootpackagename="${rootpackagename}" entitypackagename="${entitypackagename}" javafiledestdir="${javafiledestdir}" javafileencoding="${javafileencoding}" env="${env}" jdbcmanagername="${jdbcmanagername}" classpathref="classpath" /> <gen-names classpathdir="${classpathdir}" rootpackagename="${rootpackagename}" entitypackagename="${entitypackagename}" javafiledestdir="${javafiledestdir}" javafileencoding="${javafileencoding}" env="${env}" jdbcmanagername="${jdbcmanagername}" classpathref="classpath" /> <gen-service classpathdir="${classpathdir}" rootpackagename="${rootpackagename}" entitypackagename="${entitypackagename}" javafiledestdir="${javafiledestdir}" javafileencoding="${javafileencoding}" env="${env}" jdbcmanagername="${jdbcmanagername}" classpathref="classpath" /> </target> <target name="gen-ddl"> <gen-ddl classpathdir="${classpathdir}" rootpackagename="${rootpackagename}" entitypackagename="${entitypackagename}" env="${env}" jdbcmanagername="${jdbcmanagername}" classpathref="classpath" /> <gen-test classpathdir="${classpathdir}" rootpackagename="${rootpackagename}" entitypackagename="${entitypackagename}" javafiledestdir="${testjavafiledestdir}" javafileencoding="${javafileencoding}" env="${env}" jdbcmanagername="${jdbcmanagername}" classpathref="classpath" /> <gen-condition classpathdir="${classpathdir}" rootpackagename="${rootpackagename}" entitypackagename="${entitypackagename}" javafiledestdir="${javafiledestdir}" javafileencoding="${javafileencoding}" env="${env}" jdbcmanagername="${jdbcmanagername}" classpathref="classpath" /> <gen-names classpathdir="${classpathdir}" rootpackagename="${rootpackagename}" entitypackagename="${entitypackagename}" javafiledestdir="${javafiledestdir}" javafileencoding="${javafileencoding}" env="${env}" jdbcmanagername="${jdbcmanagername}" classpathref="classpath" /> <gen-service classpathdir="${classpathdir}" rootpackagename="${rootpackagename}" entitypackagename="${entitypackagename}" javafiledestdir="${javafiledestdir}" javafileencoding="${javafileencoding}" env="${env}" jdbcmanagername="${jdbcmanagername}" classpathref="classpath" /> </target> <target name="migrate"> <migrate classpathdir="${classpathdir}" rootpackagename="${rootpackagename}" entitypackagename="${entitypackagename}" env="${env}" jdbcmanagername="${jdbcmanagername}" classpathref="classpath" /> </target> </project>
次回のリリースには、こんなかんじの雛形についてもドキュメントに載せようと思います。