<?xml version="1.0" encoding="UTF-8"?>\r
-<project name="CharacterManaJ" default="default">\r
- <description>CharacterManaJ</description>\r
+<project name="CharacterManaJ" default="makeExecutableJar">\r
+ <description>CharacterManaJ</description>\r
\r
<!-- 出力するファイル名 -->\r
<property name="appName" value="CharacterManaJ.app"/>\r
<os family="unix"/>\r
</and>\r
</condition>\r
- \r
+\r
+ <!-- launch4jの設定 -->\r
+ <property name="launch4j.dir" location="C:/Java/Launch4j" />\r
+\r
<!-- デフォルトのターゲット、JARファイルを作成する -->\r
- <target name="default" description="make jar">\r
- <delete dir="work"/>\r
+ <target name="makeExecutableJar" description="makejar">\r
+ <delete dir="work"/>\r
<mkdir dir="work"/>\r
<!-- J2SE5以降をターゲットにコンパイルする。(Tiger/Leopard on PPCのため)\r
JDK6のAppleExtentionsでは非推奨になっているものがあるため警告がでます。\r
-->\r
- <javac\r
+ <javac\r
target="1.5"\r
destdir="work"\r
srcdir="src"\r
encoding="UTF-8"\r
debug="on"\r
includeantruntime="false">\r
- <classpath>\r
- <fileset dir="extlib">\r
- <include name="**/*.jar"/>\r
- </fileset>\r
- </classpath>\r
- <compilerarg value="-Xlint:deprecation" />\r
- <compilerarg value="-Xlint:unchecked" />\r
- </javac>\r
+ <classpath>\r
+ <fileset dir="extlib">\r
+ <include name="**/*.jar"/>\r
+ </fileset>\r
+ </classpath>\r
+ <compilerarg value="-Xlint:deprecation" />\r
+ <compilerarg value="-Xlint:unchecked" />\r
+ </javac>\r
\r
<!-- リソースをコピーする -->\r
<copy todir="work">\r
- <fileset dir="resources">\r
- <exclude name="**/*.java"/>\r
- </fileset>\r
- </copy>\r
+ <fileset dir="resources">\r
+ <exclude name="**/*.java"/>\r
+ </fileset>\r
+ </copy>\r
\r
<!-- ソース上のリソースをコピーする -->\r
<copy todir="work">\r
- <fileset dir="src">\r
- <exclude name="**/*.java"/>\r
- </fileset>\r
- </copy>\r
+ <fileset dir="src">\r
+ <exclude name="**/*.java"/>\r
+ </fileset>\r
+ </copy>\r
\r
<!-- JARを作成する -->\r
<jar jarfile="${distdir}/CharacterManaJ.jar"\r
basedir="work"\r
index="true">\r
- <manifest>\r
- <attribute name="Main-Class" value="charactermanaj.CharacterManaJ" />\r
- <!-- スプラッシュ画像 -->\r
- <attribute name="Splashscreen-Image" value="splash.png"/>\r
- <!-- バージョン情報とか -->\r
+ <manifest>\r
+ <attribute name="Main-Class" value="charactermanaj.CharacterManaJ" />\r
+ <!-- スプラッシュ画像 -->\r
+ <attribute name="Splashscreen-Image" value="splash.png"/>\r
+ <!-- バージョン情報とか -->\r
<attribute name="Built-By" value="${vendor}" />\r
<attribute name="Built-On" value="${build-info.current-date}" />\r
<attribute name="Built-At" value="${build-info.current-time}" />\r
<attribute name="Specification-Version" value="${specification_version}" />\r
<attribute name="Specification-Vendor" value="${vendor}" />\r
<attribute name="Implementation-Title" value="CharacterManaJ ${specification_version} (${implements_version})" />\r
- <attribute name="Implementation-Version" value="${implements_version} ${build-info.current-date}" /> \r
+ <attribute name="Implementation-Version" value="${implements_version} ${build-info.current-date}" />\r
<attribute name="Implementation-Vendor" value="${vendor}" />\r
- </manifest>\r
- </jar>\r
- <delete dir="work"/>\r
- </target>\r
-\r
- <!--\r
- Mac OS Xのアプリケーションバンドル構造のフォルダを更新する。\r
- バンドルファイルの作り方は公式ページに記述されている。\r
- http://developer.apple.com/mac/library/documentation/Java/Conceptual/Java14Development/03-JavaDeployment/JavaDeployment.html\r
- -->\r
- <target name="makeAppBundle" if="isMacOSX" depends="default">\r
- <!-- JARファイルをアプリケーションバンドル内にコピー -->\r
- <exec dir="${distdir}" executable="/bin/ln">\r
- <arg line='-f "${jarName}" "${appName}/Contents/Resources/Java/${jarName}"'/>\r
- </exec>\r
- <!-- JAVA起動スタブをコピー -->\r
- <copy file="/System/Library/Frameworks/JavaVM.framework/Versions/Current/Resources/MacOS/JavaApplicationStub"\r
- toDir="${distdir}/${appName}/Contents/MacOS/"/>\r
- <!-- ルートフォルダにアプリケーションバンドルの属性をセット -->\r
- <exec dir="${distdir}" executable="/bin/sh">\r
- <arg line='-c "/usr/bin/setFile -a B ${appName}"'/>\r
- </exec>\r
- <!-- JAVA起動スタブに実行パーミッション再設定 -->\r
- <exec dir="${distdir}" executable="/bin/sh">\r
- <arg line='-c "chmod 755 ${appName}/Contents/MacOS/JavaApplicationStub"'/>\r
- </exec>\r
- <!-- リソースディレクトリのパーミッション再設定 -->\r
- <exec dir="${distdir}" executable="/bin/sh">\r
- <arg line='-c "chmod -R 774 ${appName}/Contents/Resources/"'/>\r
- </exec>\r
+ </manifest>\r
+ </jar>\r
+ <delete dir="work"/>\r
</target>\r
\r
- <!--\r
- OracleのJava7 on OSX用のアプリケーションバンドル構造のフォルダを更新する。\r
- 基本構造は、appbundler.jarを用いて作成したもの。ただし、環境変数LC_CTYPE=UTF8の設定と、\r
- スプラッシュ画面、および、ローカライズの設定をinfo.plist, InfoPlist.stringsに加えている.\r
- -->\r
- <target name="makeAppBundleJava7" if="isMacOSX" depends="default">\r
- <!-- JARファイルをアプリケーションバンドル内にコピー -->\r
- <exec dir="${distdir}" executable="/bin/ln">\r
- <arg line='-f "${jarName}" "java7mac/${appName}/Contents/Java/${jarName}"'/>\r
- </exec>\r
- <!-- ルートフォルダにアプリケーションバンドルの属性をセット -->\r
- <exec dir="${distdir}/java7mac" executable="/bin/sh">\r
- <arg line='-c "/usr/bin/setFile -a B ${appName}"'/>\r
- </exec>\r
- <!-- JAVA起動スタブに実行パーミッション再設定 -->\r
- <exec dir="${distdir}/java7mac" executable="/bin/sh">\r
- <arg line='-c "chmod 755 ${appName}/Contents/MacOS/JavaAppLauncher"'/>\r
- </exec>\r
- <!-- リソースディレクトリのパーミッション再設定 -->\r
- <exec dir="${distdir}/java7mac" executable="/bin/sh">\r
- <arg line='-c "chmod -R 774 ${appName}/Contents/Resources/"'/>\r
- </exec>\r
+ <!-- Launch4jによるexeの作成 -->\r
+ <taskdef name="launch4j"\r
+ classname="net.sf.launch4j.ant.Launch4jTask"\r
+ classpath="${launch4j.dir}/launch4j.jar:${launch4j.dir}/lib/xstream.jar"/>\r
+ <target name="makeExe" description="コンパイルしてEXE化する" depends="makeExecutableJar">\r
+ <!-- launch4jによるexeへのラップ -->\r
+ <copy file="launch4j.xml" tofile="launch4j.xml.tmp"\r
+ filtering="true" overwrite="true">\r
+ <filterset>\r
+ <filter token="implements_version" value="${implements_version}"/>\r
+ <filter token="exe_file_version" value="${exe_file_version}"/>\r
+ </filterset>\r
+ </copy>\r
+ <launch4j configFile="launch4j.xml.tmp" />\r
+ <delete file="launch4j.xml.tmp"/>\r
</target>\r
-\r
</project>\r