他の人が自分のコードからjarを作成する方法を示して、他の人と共有できるようにしたいと思います。それまでの間、これをできるだけ簡単にしたいと思います。
それを行う最も簡単な方法は何でしょうか?
私が持っている印象は、jarファイルは実際には単なる.zipファイルであるということです。したがって、クラスとマニフェストを適切なフォルダーに配置し、zipなどのユーティリティを使用してそれらを最終的な.jarファイルに圧縮する必要があります。
jar
コマンドラインツールはどうですか?最も基本的な形では非常にシンプルです。たとえば、次のようにクラスファイルを一緒にパッケージ化できます。
jar cf archive.jar *.class
マニフェストファイルが含まれている別の例:
jar cmf ManifestFile archive.jar *.class
スローできるフラグとオプションは他にもいくつかあります。詳細については、マニュアルページを確認してください。
使いやすいツールに関しては、私が正しく覚えていれば、ほとんどのIDE(Eclipseなど)には独自のJARジェネレーターが組み込まれています。私自身、これらは非常に使いやすいと思いました。あなたのマイレージは変わるかもしれません、私は推測します。
クラスディレクトリに移動し、次のコマンドを使用してjarを作成します。
jar cvf myapp.jar *
jarコマンドは非常に使いやすいです(ただし、それほど強力ではありません)。ほとんどの大規模なプロジェクトでは、他のビルドツール(ant、apbなど)を使用しています。
jarを簡単に作成するには、すべてのクラスを別のディレクトリに配置するのが最適です。あなたはを使用してそうすることができますjavac -d <directory> <source classes>
したがって、たとえば:
javac -d ./classes ./src/mypkg/*.java
classes
そこにすべてのクラスファイルを含むディレクトリを残します。
次に、jarコマンドを使用してjarファイルを作成できます。
jar cvf my-jar.jar ./classes
このcvf
部分は「詳細ファイルの作成」の略で、jarファイルを作成することを意味します。jarツールが何をしているのかを詳細に記述し、jarファイルのファイル名を指定する必要があります(この場合my-jar.jar
)。
いずれにせよ、jarファイルの作成(およびJava関連のすべて)について学ぶための最良の情報源は、Javaチュートリアルです。
Eclipse 3.5を使用している場合は、プログラムを開発してから、「エクスポート」->「Java」->「実行可能なjar」を選択できます。
さまざまなオプションは主にプログラムで使用されるjarファイルを処理し、MANIFEST.MFを自分で処理しなくても「java-jar....」で実行できるものになります。
プロジェクトをMaven 化してから、次のように入力します。
$ mvn package
それらを他のユーザーと共有するには、それらを企業のリポジトリ ( Nexusなど) にデプロイします。通常、これは継続的な統合プロセスによって行われます。