2016-06-23 5 views
0

javaプロジェクトを.exeにコンパイルするexeプログラムへのjarファイルを知っています。このようなソフトウェアの実際の動作を知りたいのですが。.exeから.exeへの操作はどのように動作しますか?

この操作を実行する方法は?

jarファイルのバイトコードをexeファイルに変更しますか?

答えて

1

少なくとも2つの方法があり、ユーザーがクリックできる.exeファイルになります。

より簡単なのは、ラップ必要なJava環境で、exeは標準VMのランチャーとしてのみ動作します。ラップされたアプリケーションにJREを組み込むことも、JREをインストールしたシステムを使用することもできます。 launch4j(http://launch4j.sourceforge.net/)は、このように動作する例です。

また、JIT(CPUが実行できるネイティブコードを生成する)の作業を、独立して展開することも可能です。この機能を提供するgcj(https://gcc.gnu.org/java/)と少なくとも1つの市販製品(Excelsior JET)が存在します(Excelsior JET)。

"how":ラッピングはコードを変更するものではなく、Javaコードを実行するために必要な環境を設定するランチャーを提供し、エンドユーザが必要としないポイントまでプロセスを自動化します彼らがJavaコードを実行していることを知ることができます。これは、任意のインストーラーパッケージと組み合わせて、「クリックしてインストールする」および「クリックして実行する」ユーザーエクスペリエンス(例:InnoSetup)を提供します。

ネイティブコードへのコンパイルは、他のコンパイラと基本的に同じですが、入力言語をネイティブコードに変換します。ランタイム動的(例えば、クラスローディング、リフレクション)のjavas機能の多くのために、これは翻訳にかなりの労力を必要とする。

1

基本的に実行ファイルはあなたのjarファイルを起動しているだけです。まだバイトコードで、まだJVMで動作しています。

+0

どうか私に説明していただけますか? – The1Dev

+0

ここにありますhttp://launch4j.sourceforge.net/ – Acewin

+0

あなたのjarは実行可能ファイルの中にパッケージ化されます。それをアーカイブと考えてください。 jarと並んで、Java仮想マシンを起動するシステムコールを呼び出すランチャーがあります。 – Shiro

関連する問題