一部の情報は非常に古いもの(20年以上前〜)ですので、利用する際はご注意ください(Java 1.4 とか .NET 1.0 とか、Windows 2000 とか)
お問い合せは wiki@shise.net まで。Gmail に転送されるので、スパムは全部カットされます。
Jarファイルの作り方。(例)
コマンド
jar cvfm ファイル名.jar Manifest.txt *.class *.txt package data
マニフェストファイル(Manifest.txt)
Manifest-Version: 1.0 Main-Class: package.Main Created-By: 1.4.2_05
Jarの中のリソースへのアクセス。
普通、Jar の中に一緒に圧縮した画像などのリソースは、
URL url = クラス名.class.getResource("リソース名");
で URL が取れるが、このときリソースがディレクトリに入っている場合は
URL url = クラス名.class.getResource("/フォルダ名/リソース名");
としなければファイルが取れない。最初の / が重要。
URLが取れたら、
画像なら javax.imageio パッケージの ImageIO.read(url) とかで画像として読み込める。
ストリームで取るなら url.openStream() とかで、読み取りストリームが取れる。
jarファイルの実行
通常、jarファイルに Manifest で Main-class が指定されていれば、
> java -jar Hoge.jar args1 args2
こんな感じで実行できる。
で、Main-class が指定されていなければ、そのままでは実行できないので、以下のようにしてクラスパスをjarに通すと実行できる。
> java -classpath Hoge.jar package.Main args1 args2