キャラクターなんとかJの本体
Revision | 0314b268ff3044c4fbb4de9da5257fc4d1d4282f (tree) |
---|---|
Time | 2015-07-20 23:46:19 |
Author | seraphy <seraphy@sera...> |
Commiter | seraphy |
dmgおよびzipの生成用バッチの作成
@@ -1,4 +1,3 @@ | ||
1 | -#Mon Jan 17 00:43:30 JST 2011 | |
2 | 1 | eclipse.preferences.version=1 |
3 | 2 | encoding//resources/appinfo/about.html=UTF-8 |
4 | 3 | encoding//resources/appinfo/about_ja.html=UTF-8 |
@@ -1,6 +1,6 @@ | ||
1 | 1 | <?xml version="1.0" encoding="UTF-8"?> |
2 | -<project name="CharacterManaJ" default="default"> | |
3 | - <description>CharacterManaJ</description> | |
2 | +<project name="CharacterManaJ" default="makeExecutableJar"> | |
3 | + <description>CharacterManaJ</description> | |
4 | 4 | |
5 | 5 | <!-- 出力するファイル名 --> |
6 | 6 | <property name="appName" value="CharacterManaJ.app"/> |
@@ -21,53 +21,56 @@ | ||
21 | 21 | <os family="unix"/> |
22 | 22 | </and> |
23 | 23 | </condition> |
24 | - | |
24 | + | |
25 | + <!-- launch4jの設定 --> | |
26 | + <property name="launch4j.dir" location="C:/Java/Launch4j" /> | |
27 | + | |
25 | 28 | <!-- デフォルトのターゲット、JARファイルを作成する --> |
26 | - <target name="default" description="make jar"> | |
27 | - <delete dir="work"/> | |
29 | + <target name="makeExecutableJar" description="makejar"> | |
30 | + <delete dir="work"/> | |
28 | 31 | <mkdir dir="work"/> |
29 | 32 | <!-- J2SE5以降をターゲットにコンパイルする。(Tiger/Leopard on PPCのため) |
30 | 33 | JDK6のAppleExtentionsでは非推奨になっているものがあるため警告がでます。 |
31 | 34 | --> |
32 | - <javac | |
35 | + <javac | |
33 | 36 | target="1.5" |
34 | 37 | destdir="work" |
35 | 38 | srcdir="src" |
36 | 39 | encoding="UTF-8" |
37 | 40 | debug="on" |
38 | 41 | includeantruntime="false"> |
39 | - <classpath> | |
40 | - <fileset dir="extlib"> | |
41 | - <include name="**/*.jar"/> | |
42 | - </fileset> | |
43 | - </classpath> | |
44 | - <compilerarg value="-Xlint:deprecation" /> | |
45 | - <compilerarg value="-Xlint:unchecked" /> | |
46 | - </javac> | |
42 | + <classpath> | |
43 | + <fileset dir="extlib"> | |
44 | + <include name="**/*.jar"/> | |
45 | + </fileset> | |
46 | + </classpath> | |
47 | + <compilerarg value="-Xlint:deprecation" /> | |
48 | + <compilerarg value="-Xlint:unchecked" /> | |
49 | + </javac> | |
47 | 50 | |
48 | 51 | <!-- リソースをコピーする --> |
49 | 52 | <copy todir="work"> |
50 | - <fileset dir="resources"> | |
51 | - <exclude name="**/*.java"/> | |
52 | - </fileset> | |
53 | - </copy> | |
53 | + <fileset dir="resources"> | |
54 | + <exclude name="**/*.java"/> | |
55 | + </fileset> | |
56 | + </copy> | |
54 | 57 | |
55 | 58 | <!-- ソース上のリソースをコピーする --> |
56 | 59 | <copy todir="work"> |
57 | - <fileset dir="src"> | |
58 | - <exclude name="**/*.java"/> | |
59 | - </fileset> | |
60 | - </copy> | |
60 | + <fileset dir="src"> | |
61 | + <exclude name="**/*.java"/> | |
62 | + </fileset> | |
63 | + </copy> | |
61 | 64 | |
62 | 65 | <!-- JARを作成する --> |
63 | 66 | <jar jarfile="${distdir}/CharacterManaJ.jar" |
64 | 67 | basedir="work" |
65 | 68 | index="true"> |
66 | - <manifest> | |
67 | - <attribute name="Main-Class" value="charactermanaj.CharacterManaJ" /> | |
68 | - <!-- スプラッシュ画像 --> | |
69 | - <attribute name="Splashscreen-Image" value="splash.png"/> | |
70 | - <!-- バージョン情報とか --> | |
69 | + <manifest> | |
70 | + <attribute name="Main-Class" value="charactermanaj.CharacterManaJ" /> | |
71 | + <!-- スプラッシュ画像 --> | |
72 | + <attribute name="Splashscreen-Image" value="splash.png"/> | |
73 | + <!-- バージョン情報とか --> | |
71 | 74 | <attribute name="Built-By" value="${vendor}" /> |
72 | 75 | <attribute name="Built-On" value="${build-info.current-date}" /> |
73 | 76 | <attribute name="Built-At" value="${build-info.current-time}" /> |
@@ -75,62 +78,27 @@ | ||
75 | 78 | <attribute name="Specification-Version" value="${specification_version}" /> |
76 | 79 | <attribute name="Specification-Vendor" value="${vendor}" /> |
77 | 80 | <attribute name="Implementation-Title" value="CharacterManaJ ${specification_version} (${implements_version})" /> |
78 | - <attribute name="Implementation-Version" value="${implements_version} ${build-info.current-date}" /> | |
81 | + <attribute name="Implementation-Version" value="${implements_version} ${build-info.current-date}" /> | |
79 | 82 | <attribute name="Implementation-Vendor" value="${vendor}" /> |
80 | - </manifest> | |
81 | - </jar> | |
82 | - <delete dir="work"/> | |
83 | - </target> | |
84 | - | |
85 | - <!-- | |
86 | - Mac OS Xのアプリケーションバンドル構造のフォルダを更新する。 | |
87 | - バンドルファイルの作り方は公式ページに記述されている。 | |
88 | - http://developer.apple.com/mac/library/documentation/Java/Conceptual/Java14Development/03-JavaDeployment/JavaDeployment.html | |
89 | - --> | |
90 | - <target name="makeAppBundle" if="isMacOSX" depends="default"> | |
91 | - <!-- JARファイルをアプリケーションバンドル内にコピー --> | |
92 | - <exec dir="${distdir}" executable="/bin/ln"> | |
93 | - <arg line='-f "${jarName}" "${appName}/Contents/Resources/Java/${jarName}"'/> | |
94 | - </exec> | |
95 | - <!-- JAVA起動スタブをコピー --> | |
96 | - <copy file="/System/Library/Frameworks/JavaVM.framework/Versions/Current/Resources/MacOS/JavaApplicationStub" | |
97 | - toDir="${distdir}/${appName}/Contents/MacOS/"/> | |
98 | - <!-- ルートフォルダにアプリケーションバンドルの属性をセット --> | |
99 | - <exec dir="${distdir}" executable="/bin/sh"> | |
100 | - <arg line='-c "/usr/bin/setFile -a B ${appName}"'/> | |
101 | - </exec> | |
102 | - <!-- JAVA起動スタブに実行パーミッション再設定 --> | |
103 | - <exec dir="${distdir}" executable="/bin/sh"> | |
104 | - <arg line='-c "chmod 755 ${appName}/Contents/MacOS/JavaApplicationStub"'/> | |
105 | - </exec> | |
106 | - <!-- リソースディレクトリのパーミッション再設定 --> | |
107 | - <exec dir="${distdir}" executable="/bin/sh"> | |
108 | - <arg line='-c "chmod -R 774 ${appName}/Contents/Resources/"'/> | |
109 | - </exec> | |
83 | + </manifest> | |
84 | + </jar> | |
85 | + <delete dir="work"/> | |
110 | 86 | </target> |
111 | 87 | |
112 | - <!-- | |
113 | - OracleのJava7 on OSX用のアプリケーションバンドル構造のフォルダを更新する。 | |
114 | - 基本構造は、appbundler.jarを用いて作成したもの。ただし、環境変数LC_CTYPE=UTF8の設定と、 | |
115 | - スプラッシュ画面、および、ローカライズの設定をinfo.plist, InfoPlist.stringsに加えている. | |
116 | - --> | |
117 | - <target name="makeAppBundleJava7" if="isMacOSX" depends="default"> | |
118 | - <!-- JARファイルをアプリケーションバンドル内にコピー --> | |
119 | - <exec dir="${distdir}" executable="/bin/ln"> | |
120 | - <arg line='-f "${jarName}" "java7mac/${appName}/Contents/Java/${jarName}"'/> | |
121 | - </exec> | |
122 | - <!-- ルートフォルダにアプリケーションバンドルの属性をセット --> | |
123 | - <exec dir="${distdir}/java7mac" executable="/bin/sh"> | |
124 | - <arg line='-c "/usr/bin/setFile -a B ${appName}"'/> | |
125 | - </exec> | |
126 | - <!-- JAVA起動スタブに実行パーミッション再設定 --> | |
127 | - <exec dir="${distdir}/java7mac" executable="/bin/sh"> | |
128 | - <arg line='-c "chmod 755 ${appName}/Contents/MacOS/JavaAppLauncher"'/> | |
129 | - </exec> | |
130 | - <!-- リソースディレクトリのパーミッション再設定 --> | |
131 | - <exec dir="${distdir}/java7mac" executable="/bin/sh"> | |
132 | - <arg line='-c "chmod -R 774 ${appName}/Contents/Resources/"'/> | |
133 | - </exec> | |
88 | + <!-- Launch4jによるexeの作成 --> | |
89 | + <taskdef name="launch4j" | |
90 | + classname="net.sf.launch4j.ant.Launch4jTask" | |
91 | + classpath="${launch4j.dir}/launch4j.jar:${launch4j.dir}/lib/xstream.jar"/> | |
92 | + <target name="makeExe" description="コンパイルしてEXE化する" depends="makeExecutableJar"> | |
93 | + <!-- launch4jによるexeへのラップ --> | |
94 | + <copy file="launch4j.xml" tofile="launch4j.xml.tmp" | |
95 | + filtering="true" overwrite="true"> | |
96 | + <filterset> | |
97 | + <filter token="implements_version" value="${implements_version}"/> | |
98 | + <filter token="exe_file_version" value="${exe_file_version}"/> | |
99 | + </filterset> | |
100 | + </copy> | |
101 | + <launch4j configFile="launch4j.xml.tmp" /> | |
102 | + <delete file="launch4j.xml.tmp"/> | |
134 | 103 | </target> |
135 | - | |
136 | 104 | </project> |
@@ -1 +1,8 @@ | ||
1 | 1 | /jre |
2 | +/java8macWithJRE | |
3 | +/java6mac/CharacterManaJ.app/Contents/Resources/Java/CharacterManaJ.jar | |
4 | +/java8mac/CharacterManaJ.app/Contents/Java/CharacterManaJ.jar | |
5 | +*.dmg | |
6 | +*.exe | |
7 | +*.jar | |
8 | +*.zip |
@@ -0,0 +1,47 @@ | ||
1 | +[[リリースノート (キャラクターなんとかJ - 0.998)]] | |
2 | +2015/07/20 | |
3 | + | |
4 | +ホームページ | |
5 | +http://osdn.jp/projects/charactermanaj/ | |
6 | + | |
7 | +[ver0.997からの変更点] | |
8 | + | |
9 | +1. 頂き物の中国語リソース(zh)を本体にマージしました。 | |
10 | +2. フォントの選択で表示できない文字がある場合は除外するようにしました。 | |
11 | + | |
12 | +※ Ver0.997で優先フォントの指定をできるように修正したのですが、日本語フォントを優先的に使用させるため、メイリオ等があれば、それを選択するようにしていました。 | |
13 | +しかし、頂いた中国語リソースを使う場合、メイリオがある場合には中国語を使用しつつメイリオで表示させることになるため、中国語文字が文字化けしてしまう問題がありました。 | |
14 | +現在のロケールにあわせた文字列リソースを表示できないフォントは選択から除外するようにしました。 | |
15 | + | |
16 | +[インストール方法] | |
17 | + | |
18 | +charactermamaj.exeを好きなフォルダに置いて実行するだけです。 | |
19 | +特にインストール作業は必要ありません。 | |
20 | + | |
21 | +※ 本アプリケーションには画像データは含まれていません。 | |
22 | +パーツセットを配布しているサイト等より、画像データを入手してください。 | |
23 | +(詳しくはWikiに本家のキャラクターセットの利用方法について記載しております。) | |
24 | + | |
25 | +charactermanaj.l4j.iniファイルは起動時の設定を調整する場合に、exeと同じフォルダに置いて使います。 | |
26 | +たとえば、-Xmx256mと指定した場合は、最大で256MBのメモリを使用します。 | |
27 | +(このファイルがない場合はデフォルト値を用います。) | |
28 | + | |
29 | + | |
30 | +[動作環境について] | |
31 | + | |
32 | +以下の環境での想定を行っております。 | |
33 | +Windows 7(32/64) | |
34 | +Windows 8.1(32/64) | |
35 | + | |
36 | +可能であればJava7またはJava8での利用をおすすめします。 | |
37 | +JavaSE5で作成されているため、JavaSE5のデスクトップをサポートする環境であれば基本的には動作すると思います。 | |
38 | + | |
39 | + | |
40 | +[使用・作成されるファイル等について] | |
41 | +使用・作成されるフォルダ等についてはWikiをご参照ください。 | |
42 | +http://sourceforge.jp/projects/charactermanaj/wiki/FrontPage | |
43 | + | |
44 | +[ソースコードについて] | |
45 | +ver0.995からソースコードはGitで管理しています。 | |
46 | +https://sourceforge.jp/projects/charactermanaj/scm/git/CharacterManaJ/ | |
47 | + |
@@ -0,0 +1,50 @@ | ||
1 | +[[リリースノート (キャラクターなんとかJ - 0.998 - JRE8同梱版)]] | |
2 | +2015/07/20 | |
3 | + | |
4 | +ホームページ | |
5 | +http://osdn.jp/projects/charactermanaj/ | |
6 | + | |
7 | +[ver0.997からの変更点] | |
8 | + | |
9 | +1. 頂き物の中国語リソース(zh)を本体にマージしました。 | |
10 | +2. フォントの選択で表示できない文字がある場合は除外するようにしました。 | |
11 | + | |
12 | +※ Ver0.997で優先フォントの指定をできるように修正したのですが、日本語フォントを優先的に使用させるため、メイリオ等があれば、それを選択するようにしていました。 | |
13 | +しかし、頂いた中国語リソースを使う場合、メイリオがある場合には中国語を使用しつつメイリオで表示させることになるため、中国語文字が文字化けしてしまう問題がありました。 | |
14 | +現在のロケールにあわせた文字列リソースを表示できないフォントは選択から除外するようにしました。 | |
15 | + | |
16 | +[インストール方法] | |
17 | + | |
18 | +CharacterManaJ_0.998_with_JRE8を好きなフォルダに展開して実行するだけです。 | |
19 | +特にインストール作業は必要ありません。 | |
20 | + | |
21 | +OracleのJavaランタイムがアプリケーションに同梱されています。 | |
22 | +マシンにJavaをインストールしていない場合でも、Javaのインストールなしに実行できます。 | |
23 | + | |
24 | +※ 本アプリケーションには画像データは含まれていません。 | |
25 | +パーツセットを配布しているサイト等より、画像データを入手してください。 | |
26 | +(詳しくはWikiに本家のキャラクターセットの利用方法について記載しております。) | |
27 | + | |
28 | +charactermanaj.l4j.iniファイルは起動時の設定を調整する場合に、exeと同じフォルダに置いて使います。 | |
29 | +たとえば、-Xmx256mと指定した場合は、最大で256MBのメモリを使用します。 | |
30 | +(このファイルがない場合はデフォルト値を用います。) | |
31 | + | |
32 | + | |
33 | +[動作環境について] | |
34 | + | |
35 | +以下の環境での想定を行っております。 | |
36 | +Windows 7(32/64) | |
37 | +Windows 8.1(32/64) | |
38 | + | |
39 | +同梱されているJREは、Java8(jdk1.8.0_51 32ビット版)となります。 | |
40 | +より新しいJavaを利用したい場合は、jreフォルダの中身を新しいjreのものとまるごと差し替えてください。 | |
41 | +また、jreフォルダを削除するとシステムにインストールされているJavaを利用するようになります。 | |
42 | + | |
43 | + | |
44 | +[使用・作成されるファイル等について] | |
45 | +使用・作成されるフォルダ等についてはWikiをご参照ください。 | |
46 | +http://sourceforge.jp/projects/charactermanaj/wiki/FrontPage | |
47 | + | |
48 | +[ソースコードについて] | |
49 | +ver0.995からソースコードはGitで管理しています。 | |
50 | +https://sourceforge.jp/projects/charactermanaj/scm/git/CharacterManaJ/ | |
\ No newline at end of file |
@@ -0,0 +1,47 @@ | ||
1 | +キャラクターなんとかJ Ver0.998 | |
2 | +2015/07/20 | |
3 | + | |
4 | +ホームページ | |
5 | +http://osdn.jp/projects/charactermanaj/ | |
6 | + | |
7 | +[ver0.997からの変更点] | |
8 | + | |
9 | +1. 頂き物の中国語リソース(zh)を本体にマージしました。 | |
10 | +2. フォントの選択で表示できない文字がある場合は除外するようにしました。 | |
11 | + | |
12 | +※ Ver0.997で優先フォントの指定をできるように修正したのですが、日本語フォントを優先的に使用させるため、メイリオ等があれば、それを選択するようにしていました。 | |
13 | +しかし、頂いた中国語リソースを使う場合、メイリオがある場合には中国語を使用しつつメイリオで表示させることになるため、中国語文字が文字化けしてしまう問題がありました。 | |
14 | +現在のロケールにあわせた文字列リソースを表示できないフォントは選択から除外するようにしました。 | |
15 | + | |
16 | +[ファイルの説明] | |
17 | + | |
18 | +* キャラクターなんとかJ.app | |
19 | + OracleのJava7またはJava8を使用するバージョンです。 | |
20 | + あらかじめ、OracleのサイトよりJava7またはJava8をインストールしてください。 | |
21 | + 事前にOracleのJava7以降をインストールしていない場合は起動時にエラーとなります。 | |
22 | + | |
23 | + ※ JRE同梱版の場合は、Javaがアプリケーションに含まれていますので、Javaのインストール作業は不要です。 | |
24 | + | |
25 | + | |
26 | +* java6/キャラクターなんとかJ.app | |
27 | + AppleのMac OS X用のJava6を使用するバージョンです。 | |
28 | + 起動時に、まだJavaがインストールされていない場合は自動インストールが開始されます。 | |
29 | + ただし、OSX10.9 Marvericks では、Javaの自動インストールがうまく行かないケースがあるようです。 | |
30 | + その場合は、手動でAppleもしくはOracleのサイトより、Javaランタイムをインストールしてください。 | |
31 | + | |
32 | + ※ JRE同梱版には含まれていません。 | |
33 | + | |
34 | + | |
35 | +* CharacterManaJ.jar | |
36 | + 実行可能jarです。Java6,7,8のいずれかがインストールされていればダブルクリックで実行できます。 | |
37 | + ただし、Java7, 8の場合はJava7u60以降、Java8u5以降の最新のものをお使いください。 | |
38 | + Mac用の設定ファイルがないため、上記appとは、かならずしも同じではありません。 | |
39 | + よくJavaの特性を知っている方向けです。 | |
40 | + | |
41 | + ※ JRE同梱版には含まれていません。 | |
42 | + | |
43 | + | |
44 | +不明な点があればプロジェクトのWikiを参照してください。 | |
45 | +https://sourceforge.jp/projects/charactermanaj/wiki/FrontPage | |
46 | + | |
47 | +以上です。 |
@@ -0,0 +1,46 @@ | ||
1 | +#!/bin/bash | |
2 | +# -*- coding: utf-8 -*- | |
3 | + | |
4 | +echo "*****************************" | |
5 | +echo "Mac用の配布物の一括作成を行います" | |
6 | +echo "*****************************" | |
7 | + | |
8 | +./build_appbundle6.sh | |
9 | +if [ $? -ne 0 ]; then | |
10 | + echo "error" >&2 | |
11 | + exit 1 | |
12 | +fi | |
13 | + | |
14 | +echo "*****************************" | |
15 | +./build_appbundle8.sh | |
16 | +if [ $? -ne 0 ]; then | |
17 | + echo "error" >&2 | |
18 | + exit 1 | |
19 | +fi | |
20 | + | |
21 | +echo "*****************************" | |
22 | +./build_appbundle8_jre.sh | |
23 | +if [ $? -ne 0 ]; then | |
24 | + echo "error" >&2 | |
25 | + exit 1 | |
26 | +fi | |
27 | + | |
28 | +echo "*****************************" | |
29 | +./build_dmg.sh | |
30 | +if [ $? -ne 0 ]; then | |
31 | + echo "error" >&2 | |
32 | + exit 1 | |
33 | +fi | |
34 | + | |
35 | +echo "*****************************" | |
36 | +./build_with_jre_dmg.sh | |
37 | +if [ $? -ne 0 ]; then | |
38 | + echo "error" >&2 | |
39 | + exit 1 | |
40 | +fi | |
41 | + | |
42 | +echo "*****************************" | |
43 | +echo "all done" | |
44 | + | |
45 | + | |
46 | + |
@@ -0,0 +1,27 @@ | ||
1 | +#! /bin/bash | |
2 | +# -*- coding: utf-8 -*- | |
3 | + | |
4 | +JARNAME=CharacterManaJ.jar | |
5 | +APPDIR=java6mac/CharacterManaJ.app | |
6 | + | |
7 | +if [ ! -d "$APPDIR" ]; then | |
8 | + echo "directory not found: $APPDIR" >&2 | |
9 | + exit 1 | |
10 | +fi | |
11 | + | |
12 | +# 実行可能jarのコピー | |
13 | +cp -pv $JARNAME $APPDIR/Contents/Resources/java/${JARNAME} | |
14 | + | |
15 | +# Java起動スタブをコピー | |
16 | +cp -apv "/System/Library/Frameworks/JavaVM.framework/Versions/Current/Resources/MacOS/JavaApplicationStub" $APPDIR/Contents/MacOS/ | |
17 | + | |
18 | +# バンドル属性をセット | |
19 | +/usr/bin/setFile -a B $APPDIR | |
20 | + | |
21 | +# Java起動スタブに実行パーミッションを設定 | |
22 | +chmod 755 $APPDIR/Contents/MacOS/JavaApplicationStub | |
23 | + | |
24 | +# リソースディレクトリのパーミッション設定 | |
25 | +chmod -R 774 $APPDIR/Contents/Resources/ | |
26 | + | |
27 | +echo "done" |
@@ -0,0 +1,39 @@ | ||
1 | +#! /bin/bash | |
2 | +# -*- coding: utf-8 -*- | |
3 | + | |
4 | +JARNAME=CharacterManaJ.jar | |
5 | +APPDIR=java8mac/CharacterManaJ.app | |
6 | + | |
7 | +PlistBuddy=/usr/libexec/PlistBuddy | |
8 | + | |
9 | +if [ ! -d "$APPDIR" ]; then | |
10 | + echo "directory not found: $APPDIR" >&2 | |
11 | + exit 1 | |
12 | +fi | |
13 | + | |
14 | +# 実行可能jarのコピー | |
15 | +cp -pv $JARNAME $APPDIR/Contents/java/${JARNAME} | |
16 | + | |
17 | +# バンドル属性をセット | |
18 | +/usr/bin/setFile -a B $APPDIR | |
19 | + | |
20 | +# Java起動スタブに実行パーミッションを設定 | |
21 | +chmod 755 $APPDIR/Contents/MacOS/JavaAppLauncher | |
22 | + | |
23 | +# リソースディレクトリのパーミッション設定 | |
24 | +chmod -R 774 $APPDIR/Contents/Resources/ | |
25 | + | |
26 | + | |
27 | +# JVMRuntimeの設定を取得する. | |
28 | +jdkname=$($PlistBuddy -c "Print JVMRuntime" $APPDIR/Contents/Info.plist 2>/dev/null) | |
29 | +echo jdkname=$jdkname | |
30 | + | |
31 | +if [ ! -z "$jdkname" ]; then | |
32 | + # JVMRuntimeなしに設定する | |
33 | + $PlistBuddy -c "Delete :JVMRuntime" $APPDIR/Contents/Info.plist | |
34 | + | |
35 | + # JVMRuntimeを消す | |
36 | + rm -frv $APPDIR/Contents/PlugIns/${jdkname} | |
37 | +fi | |
38 | + | |
39 | +echo "done" |
@@ -0,0 +1,76 @@ | ||
1 | +#!/bin/bash | |
2 | +# -*- Coding: utf-8 -*- | |
3 | + | |
4 | +# システム内のJAVA_HOMEの取得 | |
5 | +export JAVA_HOME=$(/usr/libexec/java_home -v 1.8.0) | |
6 | +echo "JAVA_HOME=${JAVA_HOME}" | |
7 | + | |
8 | +# info.plistの編集コマンド | |
9 | +PlistBuddy=/usr/libexec/PlistBuddy | |
10 | + | |
11 | +################# | |
12 | +# 作業ディレクトリ | |
13 | +export TARGETDIR="withJRE" | |
14 | + | |
15 | +# コピー元ディレクトリ | |
16 | +export EXPORTDIRSRC="java8mac" | |
17 | + | |
18 | +# JRE同梱版生成先ディレクトリ | |
19 | +export EXPORTDIR="java8macWithJRE" | |
20 | + | |
21 | +################# | |
22 | + | |
23 | +if [ ! -d $EXPORTDIRSRC ]; then | |
24 | + echo "not directory $EXPORTDIRSRC" >&2 | |
25 | + exit 1 | |
26 | +fi | |
27 | + | |
28 | +# まるごとコピーする | |
29 | +echo "copy $EXPORTDIRSRC --> $EXPORTDIR" | |
30 | +rm -fr "$EXPORTDIR" | |
31 | +mkdir -p "$EXPORTDIR" | |
32 | +ditto -v "$EXPORTDIRSRC" "$EXPORTDIR" | |
33 | + | |
34 | +# 作業用出力先 | |
35 | +mkdir -pv $TARGETDIR | |
36 | + | |
37 | +# appbundlerによるjre付きバンドルの作成 | |
38 | +ant -f build_appbundle8_jre.xml | |
39 | + | |
40 | +# 生成したJRE付きのバンドルファイル内からjdk名を取得する | |
41 | +jdkname=$($PlistBuddy -c "print JVMRuntime" $TARGETDIR/CharacterManaJ.app/Contents/Info.plist) | |
42 | +echo new jdk_name=$jdkname | |
43 | +if [ -z "$jdkname" ]; then | |
44 | + echo "can't read the new JVMRuntime." >&2 | |
45 | + exit 1 | |
46 | +fi | |
47 | + | |
48 | +# 現行のjdk名を取得する | |
49 | +oldjdkname=$($PlistBuddy -c "print JVMRuntime" $EXPORTDIR/CharacterManaJ.app/Contents/Info.plist) | |
50 | +echo current: jdk_name=$oldjdkname | |
51 | + | |
52 | +if [ "$oldjdkname" = "$jdkname" ]; then | |
53 | + # 同じjdkバージョンならなにもしない | |
54 | + echo "*already same jdk" | |
55 | +else | |
56 | + if [ ! -z "$oldjdkname" ]; then | |
57 | + # 既存のjdkを消す | |
58 | + rm -fr $EXPORTDIR/CharacterManaJ.app/Contents/PlugIns/$oldjdkname | |
59 | + fi | |
60 | + | |
61 | + # 新しいjdk名に書き換える | |
62 | + if [ -z "$oldjdkname" ]; then | |
63 | + $PlistBuddy -c "add :JVMRuntime string $jdkname" $EXPORTDIR/CharacterManaJ.app/Contents/Info.plist | |
64 | + else | |
65 | + $PlistBuddy -c "set :JVMRuntime $jdkname" $EXPORTDIR/CharacterManaJ.app/Contents/Info.plist | |
66 | + fi; | |
67 | + | |
68 | + # 新しいjdkをコピーする | |
69 | + echo "copy $TARGETDIR/CharacterManaJ.app/Contents/PlugIns/$jdkname --> $EXPORTDIR/CharacterManaJ.app/Contents/PlugIns/" | |
70 | + ditto -v $TARGETDIR/CharacterManaJ.app/Contents/PlugIns/$jdkname $EXPORTDIR/CharacterManaJ.app/Contents/PlugIns/$jdkname | |
71 | +fi | |
72 | + | |
73 | +# 生成完了後は不要なので消す | |
74 | +rm -fr $TARGETDIR | |
75 | + | |
76 | +echo "done" |
@@ -0,0 +1,34 @@ | ||
1 | +<?xml version="1.0" encoding="UTF-8"?> | |
2 | +<project name="CharacterManaJ_Java7Mac" default="app-bundle"> | |
3 | +<description>CharacterManaJ(For Java7 On OSX)</description> | |
4 | + | |
5 | + <!-- Import environment variables --> | |
6 | + <property environment="env"/> | |
7 | + <property name="env.TARGETDIR" value="withJRE"/> | |
8 | + | |
9 | + <taskdef name="bundleapp" | |
10 | + classname="com.oracle.appbundler.AppBundlerTask" | |
11 | + classpath="../extlib/appbundler-1.0.jar" /> | |
12 | + | |
13 | +<!-- | |
14 | + Java7 for OSX用のアプリケーションバンドルを作成するためのタスクを実行する. | |
15 | + http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/packagingAppsForMac.html | |
16 | + ただし、これを実施したあとにinfo.plistの修正やリソースの追加が必要である。 | |
17 | +--> | |
18 | +<target name="app-bundle"> | |
19 | + <echo message="JAVA_HOME=${env.JAVA_HOME}"/> | |
20 | + <echo message="TARGETDIR=${env.TARGETDIR}"/> | |
21 | + <mkdir dir="${env.TARGETDIR}"/> | |
22 | + <bundleapp outputdirectory="${env.TARGETDIR}" | |
23 | + name="CharacterManaJ" | |
24 | + displayname="キャラクターなんとかJ" | |
25 | + shortversion="1.0" | |
26 | + icon="../icon.icns" | |
27 | + identifier="charactermanaj.Main" | |
28 | + mainclassname="charactermanaj.Main"> | |
29 | + <runtime dir="${env.JAVA_HOME}"/> | |
30 | + <classpath file="../CharacterManaJ.jar" /> | |
31 | + </bundleapp> | |
32 | +</target> | |
33 | + | |
34 | +</project> |
@@ -0,0 +1,80 @@ | ||
1 | +#! /bin/bash | |
2 | +# -*- coding: utf-8 -*- | |
3 | + | |
4 | +if [ ! -d "java6mac" -o ! -d "java8mac" ]; then | |
5 | + echo "java6mac/java8mac folder not found." >&2 | |
6 | + exit 1 | |
7 | +fi | |
8 | + | |
9 | +# バージョン情報をプロパティファイルより抜き出す | |
10 | +VERSION=$(cat ../resources/version.properties | sed -n -E 's/.$//;s/implements_version=([0123456789.]+)/\1/p') | |
11 | +echo "version=($VERSION)" | |
12 | + | |
13 | +# 生成するDMG名 | |
14 | +DMG_NAME="CharacterManaJ_${VERSION}" | |
15 | +echo "DMG_NAME=${DMG_NAME}.dmg" | |
16 | + | |
17 | +# 作成に一時使用するDMG名 | |
18 | +WORK_DMG_NAME="${DMG_NAME}_work" | |
19 | +echo "WORK_DMG_NAME=${WORK_DMG_NAME}.dmg" | |
20 | + | |
21 | +# ボリューム名 | |
22 | +VOLUME_NAME="CharacterManaJ Ver${VERSION}" | |
23 | + | |
24 | +# 一時DMGの削除 | |
25 | +if [ -f "$TMPDIR/${WORK_DMG_NAME}.dmg" ]; then | |
26 | + rm -frv "$TMPDIR/${WORK_DMG_NAME}.dmg" | |
27 | +fi | |
28 | + | |
29 | +# 一時DMGの作成 | |
30 | +hdiutil create -size 50m -fs HFS+ -volname "$VOLUME_NAME" -layout NONE -type UDIF "$TMPDIR/${WORK_DMG_NAME}.dmg" | |
31 | + | |
32 | +# 一時DMGのマウント | |
33 | +hdiutil attach "$TMPDIR/${WORK_DMG_NAME}.dmg" | |
34 | + | |
35 | +# マウント先 | |
36 | +DIST_DIR="/Volumes/${VOLUME_NAME}" | |
37 | + | |
38 | +# 配布物のコピー | |
39 | +cp -v README_mac.txt "$DIST_DIR/README.txt" | |
40 | +cp -v CharacterManaJ.jar "$DIST_DIR/" | |
41 | + | |
42 | +# 配布物(java6)のコピー | |
43 | +echo "copy: java6mac $DIST_DIR/java6mac" | |
44 | +cp -rp java6mac "$DIST_DIR/java6mac" | |
45 | + | |
46 | +# 配布物(java8)のコピー | |
47 | +echo "copy: java8mac/CharacterManaJ.app $DIST_DIR/" | |
48 | +cp -rp java8mac/CharacterManaJ.app "$DIST_DIR/" | |
49 | + | |
50 | +# 配布先に移動 | |
51 | +pushd "$DIST_DIR" | |
52 | + | |
53 | +echo "*create hardlink" | |
54 | + | |
55 | +# jarファイルをハードリンクにする | |
56 | +ln -fv CharacterManaJ.jar java6mac/CharacterManaJ.app/Contents/Resources/Java/CharacterManaJ.jar | |
57 | + | |
58 | +ln -fv CharacterManaJ.jar CharacterManaJ.app/Contents/Java/CharacterManaJ.jar | |
59 | + | |
60 | +popd | |
61 | + | |
62 | +# 一時DMGのデタッチ | |
63 | +hdiutil detach "$DIST_DIR" | |
64 | + | |
65 | +# 配布用DMGの削除 | |
66 | +if [ -f "$TMPDIR/${DMG_NAME}.dmg" ]; then | |
67 | + rm -f "$TMPDIR/${DMG_NAME}.dmg" | |
68 | +fi | |
69 | + | |
70 | +# 一時DMGから圧縮単一ファイル型の配布用DMGに変換 | |
71 | +# (convertはHFS+ディスク上で作業する必要がある) | |
72 | +hdiutil convert "$TMPDIR/${WORK_DMG_NAME}.dmg" -format UDZO -imagekey zlib-level=9 -o "$TMPDIR/${DMG_NAME}.dmg" | |
73 | + | |
74 | +# 作業済み一時DMGの削除 | |
75 | +rm -fv "$TMPDIR/${WORK_DMG_NAME}.dmg" | |
76 | + | |
77 | +# 配布用DMGのテンポラリからの移動 | |
78 | +mv -fv "$TMPDIR/${DMG_NAME}.dmg" . | |
79 | + | |
80 | +echo "done" |
@@ -0,0 +1,47 @@ | ||
1 | +#! /bin/bash | |
2 | +# -*- coding: utf-8 -*- | |
3 | + | |
4 | +if [ ! -d "java8macWithJRE" ]; then | |
5 | + echo "java8macWithJREがありません" >&2 | |
6 | + exit 1 | |
7 | +fi | |
8 | + | |
9 | +# プロパティファイルよりバージョン情報の読み込み | |
10 | +VERSION=$(cat ../resources/version.properties | sed -n -E 's/.$//;s/implements_version=([0123456789.]+)/\1/p') | |
11 | +echo "version=($VERSION)" | |
12 | + | |
13 | +DMG_NAME="CharacterManaJ_${VERSION}_with_jre" | |
14 | +echo "DMG_NAME=${DMG_NAME}.dmg" | |
15 | + | |
16 | +WORK_DMG_NAME="${DMG_NAME}_with_jre_work" | |
17 | +echo "WORK_DMG_NAME=${WORK_DMG_NAME}.dmg" | |
18 | + | |
19 | +VOLUME_NAME="CharacterManaJ Ver${VERSION}" | |
20 | + | |
21 | +if [ -f "$TMPDIR/${WORK_DMG_NAME}.dmg" ]; then | |
22 | + rm -frv "$TMPDIR/${WORK_DMG_NAME}.dmg" | |
23 | +fi | |
24 | + | |
25 | +hdiutil create -size 300m -fs HFS+ -volname "$VOLUME_NAME" -layout NONE -type UDIF "$TMPDIR/${WORK_DMG_NAME}.dmg" | |
26 | + | |
27 | +hdiutil attach "$TMPDIR/${WORK_DMG_NAME}.dmg" | |
28 | + | |
29 | +DIST_DIR="/Volumes/${VOLUME_NAME}" | |
30 | + | |
31 | +cp -v README_mac.txt "$DIST_DIR/README.txt" | |
32 | + | |
33 | +echo "copy: java8macWithJRE/CharacterManaJ.app $DIST_DIR/" | |
34 | +ditto java8macWithJRE/CharacterManaJ.app "$DIST_DIR/CharacterManaJ.app" | |
35 | + | |
36 | +hdiutil detach "$DIST_DIR" | |
37 | + | |
38 | +if [ -f "$TMPDIR/${DMG_NAME}.dmg" ]; then | |
39 | + rm -f "$TMPDIR/${DMG_NAME}.dmg" | |
40 | +fi | |
41 | + | |
42 | +hdiutil convert "$TMPDIR/${WORK_DMG_NAME}.dmg" -format UDZO -imagekey zlib-level=9 -o "$TMPDIR/${DMG_NAME}.dmg" | |
43 | + | |
44 | +rm -fv "$TMPDIR/${WORK_DMG_NAME}.dmg" | |
45 | +mv -fv "$TMPDIR/${DMG_NAME}.dmg" . | |
46 | + | |
47 | +echo "done" |
@@ -0,0 +1,42 @@ | ||
1 | +<?xml version="1.0" encoding="UTF-8"?> | |
2 | +<project name="makeDistributionArchive" default="makeSmallZip"> | |
3 | + <description>CharacterManaJ</description> | |
4 | + | |
5 | + <!-- ビルド日時とバージョン、ベンダー --> | |
6 | + <property file="../resources/version.properties"/> | |
7 | + <tstamp prefix="build-info"> | |
8 | + <format property="current-date" pattern="yyyy-MM-dd" locale="en" /> | |
9 | + <format property="current-time" pattern="hh:mm:ss a z" locale="en" /> | |
10 | + </tstamp> | |
11 | + | |
12 | + <!-- 出力するファイル名 --> | |
13 | + <property name="appName" value="CharacterManaJ_${implements_version}"/> | |
14 | + | |
15 | + <!-- jreを含まない配布物を作成する --> | |
16 | + <target name="makeSmallZip" description="JREを含まないシンプルなWindows用のZIPを作成する"> | |
17 | + <delete file="${appName}.zip"/> | |
18 | + <zip destfile="${appName}.zip" level="9"> | |
19 | + <fileset dir="."> | |
20 | + <include name="README_ja.txt"/> | |
21 | + <include name="appConfig.xml"/> | |
22 | + <include name="charactermanaj.exe"/> | |
23 | + <include name="charactermanaj.l4j.ini"/> | |
24 | + </fileset> | |
25 | + </zip> | |
26 | + </target> | |
27 | + | |
28 | + <!-- jreを含む配布物を作成する --> | |
29 | + <target name="makeWithJREZip" description="JREを含むWindows用のZIPを作成する"> | |
30 | + <delete file="${appName}_with_JRE8.zip"/> | |
31 | + <zip destfile="${appName}_with_JRE8.zip" level="9"> | |
32 | + <fileset dir="."> | |
33 | + <include name="README_ja_withJRE.txt"/> | |
34 | + <include name="appConfig.xml"/> | |
35 | + <include name="charactermanaj.exe"/> | |
36 | + <include name="charactermanaj.l4j.ini"/> | |
37 | + <include name="jre/**"/> | |
38 | + </fileset> | |
39 | + </zip> | |
40 | + </target> | |
41 | + | |
42 | +</project> |
@@ -1,49 +1,47 @@ | ||
1 | -<?xml version="1.0" encoding="UTF-8"?> | |
2 | -<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> | |
3 | -<plist version="1.0"> | |
4 | -<dict> | |
5 | - <key>LSEnvironment</key> | |
6 | - <dict> | |
7 | - <key>LC_CTYPE</key> | |
8 | - <string>UTF-8</string> | |
9 | - </dict> | |
10 | - <key>LSApplicationCategoryType</key> | |
11 | - <string>public.app-category.graphics-design</string> | |
12 | - <key>CFBundleDevelopmentRegion</key> | |
13 | - <string>ja_JP</string> | |
14 | - <key>CFBundleExecutable</key> | |
15 | - <string>JavaAppLauncher</string> | |
16 | - <key>CFBundleIconFile</key> | |
17 | - <string>icon.icns</string> | |
18 | - <key>CFBundleIdentifier</key> | |
19 | - <string>charactermanaj.CharacterManaJ</string> | |
20 | - <key>CFBundleDisplayName</key> | |
21 | - <string>CharacterManaJ</string> | |
22 | - <key>CFBundleInfoDictionaryVersion</key> | |
23 | - <string>6.0</string> | |
24 | - <key>CFBundleName</key> | |
25 | - <string>CharacterManaJ</string> | |
26 | - <key>CFBundlePackageType</key> | |
27 | - <string>APPL</string> | |
28 | - <key>CFBundleShortVersionString</key> | |
29 | - <string>1.0</string> | |
30 | - <key>CFBundleSignature</key> | |
31 | - <string>????</string> | |
32 | - <key>CFBundleVersion</key> | |
33 | - <string>1</string> | |
34 | - <key>NSHumanReadableCopyright</key> | |
35 | - <string>seraphyware</string> | |
36 | - <key>JVMMainClassName</key> | |
37 | - <string>charactermanaj.CharacterManaJ</string> | |
38 | - <key>JVMRuntime</key> | |
39 | - <string>jdk1.7.0_60.jdk</string> | |
40 | - <key>JVMOptions</key> | |
41 | - <array> | |
42 | - <string>-splash:$APP_ROOT/Contents/Resources/splash.png</string> | |
43 | - <string>-Xms96m</string> | |
44 | - <string>-Xmx128m</string> | |
45 | - </array> | |
46 | - <key>JVMArguments</key> | |
47 | - <array/> | |
48 | -</dict> | |
49 | -</plist> | |
1 | +<?xml version="1.0" encoding="UTF-8"?> | |
2 | +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> | |
3 | +<plist version="1.0"> | |
4 | +<dict> | |
5 | + <key>CFBundleDevelopmentRegion</key> | |
6 | + <string>ja_JP</string> | |
7 | + <key>CFBundleDisplayName</key> | |
8 | + <string>CharacterManaJ</string> | |
9 | + <key>CFBundleExecutable</key> | |
10 | + <string>JavaAppLauncher</string> | |
11 | + <key>CFBundleIconFile</key> | |
12 | + <string>icon.icns</string> | |
13 | + <key>CFBundleIdentifier</key> | |
14 | + <string>charactermanaj.CharacterManaJ</string> | |
15 | + <key>CFBundleInfoDictionaryVersion</key> | |
16 | + <string>6.0</string> | |
17 | + <key>CFBundleName</key> | |
18 | + <string>CharacterManaJ</string> | |
19 | + <key>CFBundlePackageType</key> | |
20 | + <string>APPL</string> | |
21 | + <key>CFBundleShortVersionString</key> | |
22 | + <string>1.0</string> | |
23 | + <key>CFBundleSignature</key> | |
24 | + <string>????</string> | |
25 | + <key>CFBundleVersion</key> | |
26 | + <string>1</string> | |
27 | + <key>JVMArguments</key> | |
28 | + <array/> | |
29 | + <key>JVMMainClassName</key> | |
30 | + <string>charactermanaj.CharacterManaJ</string> | |
31 | + <key>JVMOptions</key> | |
32 | + <array> | |
33 | + <string>-splash:$APP_ROOT/Contents/Resources/splash.png</string> | |
34 | + <string>-Xms96m</string> | |
35 | + <string>-Xmx128m</string> | |
36 | + </array> | |
37 | + <key>LSApplicationCategoryType</key> | |
38 | + <string>public.app-category.graphics-design</string> | |
39 | + <key>LSEnvironment</key> | |
40 | + <dict> | |
41 | + <key>LC_CTYPE</key> | |
42 | + <string>UTF-8</string> | |
43 | + </dict> | |
44 | + <key>NSHumanReadableCopyright</key> | |
45 | + <string>seraphyware</string> | |
46 | +</dict> | |
47 | +</plist> |
@@ -0,0 +1,3 @@ | ||
1 | +"JRELoadError" = "Javaランタイムをロードできません。" | |
2 | +"MainClassNameRequired" = "Main class name is required."; | |
3 | +"JavaDirectoryNotFound" = "Javaディレクトリの内容にアクセスできません。"; |
@@ -1,7 +0,0 @@ | ||
1 | -#!/bin/bash | |
2 | -export JAVA_HOME=$(/usr/libexec/java_home -v 1.7) | |
3 | -echo "JAVA_HOME=${JAVA_HOME}" | |
4 | - | |
5 | -mkdir ../dist/java7mac | |
6 | - | |
7 | -ant -f build_for_java7mac.xml |
@@ -1,31 +0,0 @@ | ||
1 | -<?xml version="1.0" encoding="UTF-8"?> | |
2 | -<project name="CharacterManaJ_Java7Mac" default="app-bundle"> | |
3 | - <description>CharacterManaJ(For Java7 On OSX)</description> | |
4 | - | |
5 | - <!-- Import environment variables --> | |
6 | - <property environment="env"/> | |
7 | - | |
8 | - <taskdef name="bundleapp" | |
9 | - classname="com.oracle.appbundler.AppBundlerTask" | |
10 | - classpath="appbundler-1.0.jar" /> | |
11 | - | |
12 | - <!-- | |
13 | - Java7 for OSX用のアプリケーションバンドルを作成するためのタスクを実行する. | |
14 | - http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/packagingAppsForMac.html | |
15 | - ただし、これを実施したあとにinfo.plistの修正やリソースの追加が必要である。 | |
16 | - --> | |
17 | -<target name="app-bundle"> | |
18 | - <echo message="JAVA_HOME=${env.JAVA_HOME}"/> | |
19 | - <bundleapp outputdirectory="../dist/java7mac" | |
20 | - name="CharacterManaJ" | |
21 | - displayname="キャラクターなんとかJ" | |
22 | - shortversion="1.0" | |
23 | - icon="../icon.icns" | |
24 | - identifier="charactermanaj.Main" | |
25 | - mainclassname="charactermanaj.Main"> | |
26 | - <runtime dir="${env.JAVA_HOME}"/> | |
27 | - <classpath file="../CharacterManaJ.jar" /> | |
28 | - </bundleapp> | |
29 | -</target> | |
30 | - | |
31 | -</project> |
@@ -22,14 +22,14 @@ | ||
22 | 22 | <maxHeapSize>128</maxHeapSize> |
23 | 23 | </jre> |
24 | 24 | <versionInfo> |
25 | - <fileVersion>0.9.9.5</fileVersion> | |
26 | - <txtFileVersion>0.995</txtFileVersion> | |
25 | + <fileVersion>@exe_file_version@</fileVersion> | |
26 | + <txtFileVersion>@implements_version@</txtFileVersion> | |
27 | 27 | <fileDescription>CharacterManaJ</fileDescription> |
28 | - <copyright>http://sourceforge.jp/projects/charactermanaj/</copyright> | |
29 | - <productVersion>0.9.9.5</productVersion> | |
30 | - <txtProductVersion>0.995</txtProductVersion> | |
28 | + <copyright>https://osdn.jp/projects/charactermanaj/simple/</copyright> | |
29 | + <productVersion>@exe_file_version@</productVersion> | |
30 | + <txtProductVersion>@implements_version@</txtProductVersion> | |
31 | 31 | <productName>CharacterManaJ</productName> |
32 | - <companyName>seraphy@users.sourceforge.jp</companyName> | |
32 | + <companyName>seraphy@users.osdn.me</companyName> | |
33 | 33 | <internalName>CharacterManaJ</internalName> |
34 | 34 | <originalFilename>charactermanaj.exe</originalFilename> |
35 | 35 | </versionInfo> |