JAR ファイルを作成し、それをクライアント マシンで実行したいので、いくつか質問があります。
- JAR ファイルを EXE ファイルに変換するにはどうすればよいですか?
- JAR ファイルの内容を暗号化するにはどうすればよいですか? jar ファイルは WinRAR で抽出でき、クラスは任意の Java デコンパイラで逆コンパイルできます。
- インストーラーを作成するにはどうすればよいですか? 私のクライアントには JVM がなく、サイズが大きいため、JDK や JRE を同梱したくありません。
このリンクを参照してください: Java to Exe。また、これを行う正当な理由と、そうすべきでない場合についても説明します。
マシンがバイナリを理解する必要があるため、バイナリを実際に暗号化することはできません。つまり、最適化された実行可能ファイルは逆コンパイルが非常に困難ですが、プレーンなクラス ファイルは簡単です。
exe がある場合は、十分なインストーラーがあります。
JSmooth は、Jar を exe でラップするアプリケーションです。
また、デプロイ先のシステムで正しいバージョンの JRE が利用可能かどうかを確認することもできます。
1) については、できないと思います。そこにツールがあるかもしれませんが、プラットフォームの非依存性を破壊するため、JDK に同梱されている標準ツールでそれを行うことはできません。(そのようなサードパーティツールへのリンクを提供する他の回答を参照してください)
3) については、InnoSetup を使用してインストーラーを作成します。セットアップに JRE を含め、InnoSetup にその場でインストールさせます。
1) 最近、プログラムjarToExeを試してみましたが、気に入りました。いくつかの機能は次のとおりです。
2) proguardやその他の難読化ツールを使用して、リバース エンジニアリングを困難にすることができます。
3) nsisは、Windows インストーラーを作成するための非常に強力な無料のスクリプト言語です。サイト wiki の優れたドキュメントと、スタック オーバーフローのサポートも同様です。
一部のツールが機能していなかった間、Launch4jは私のために機能しました。ここにも良いガイドがあります。
この助けを願っています!
7zip SFX インストール ランチャーを使用します。これはオープンソースのシンプルなツールです。jar、jre のバージョンをパッケージ化するため、インストールするシステムに jre をインストールし、自己解凍バージョンの 7zip をインストールすることは必須ではありません。バンドルと GitHubリンクの方法を説明するチュートリアルは次のとおり です。プロジェクトは維持されていませんが、完全に動作します (Java 1.8 までテスト済み)。