0

Javaでjarファイルを作成しました。いくつかのライブラリ ファイルを使用します。だから、私が持っている最終的な構造は、

  • たとえば .jar
  • ライブラリ
    • ライブラリ ファイル

Windows の exe のように、それらを単一のファイルに変換する方法を教えてください。(.sh ファイル - NetBeans インストーラー) のように、Linux でも実行する必要があります。

4

4 に答える 4

3

すべてのライブラリの依存関係を詰め込んだ JAR を作成するだけです。

  1. Maven がビルド ツールの場合は、この SO questionを確認してください。他のツール (Gradle など) にも同様のソリューションがあります。

  2. NetbeansIntelliJ IDEAなど、一部の IDE もこれに対応しています。

もちろん、パックしたいライブラリがこれを許可するライセンスを持っていることを確認してください。

于 2013-01-12T21:41:00.723 に答える
2

Netbeans を使用している場合は、これをチェックして、すべての jar を 1 つに結合します。1 つの jar がある場合は、launch4jで exe を作成できます。

于 2013-01-12T21:53:31.530 に答える
1

ここにはいくつかのオプションがあります。

  • gcj などでネイティブ アプリケーションにコンパイルします。ただし、これは多くの場合オプションではありません (調べてみると理由がわかります)。

  • javajar を実行する変更された実行可能ファイルを用意する

  • Javaでjarを実行する実行可能ファイルを用意します

クライアントに Java がインストールされていると合理的に想定できる場合は、実行可能 jar をデプロイするだけで問題ありません。ほとんどのデスクトップ OS では、Java ディストリビューションは実行可能 jar を期待どおりに実行するように設定されています (つまり、Windows でダブルクリックすることによって)。 )、そうでないものについては、Java とは何か、および jar の実行方法を知っている可能性があります。

于 2013-01-12T21:45:39.597 に答える
1

これは可能ですが、Java の性質に反します。

Java は移植可能な言語 (一度書けばどこでも実行できる) として設計されました。.jar ファイルには、実行時に Java 仮想マシンによって解釈される Java バイトコードが含まれています。任意のアーキテクチャにコピーでき、そこで実行されます。

.exe ファイルには、プロセッサによって直接実行されるマシン コード固有の言語が実際に含まれています。これは別のアーキテクチャでは機能しません。

ただし、JarToExeJSmoothなど、必要に応じてさまざまなツールがあります。

于 2013-01-12T21:42:40.327 に答える