2つの単純なJavaSwingファイルで構成されるプログラムがあります。
プログラムの実行可能JARファイルを作成するにはどうすればよいですか?
2つの単純なJavaSwingファイルで構成されるプログラムがあります。
プログラムの実行可能JARファイルを作成するにはどうすればよいですか?
回答:
jarファイルは、Javaファイルのコレクションを含む単なるファイルです。jarファイルを実行可能にするには、main
クラスがjarファイルのどこにあるかを指定する必要があります。コード例は次のようになります。
public class JarExample {
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
// your logic here
}
});
}
}
クラスをコンパイルします。jarを作成するには、マニフェストファイル(MANIFEST.MF
)も作成する必要があります。例えば、
Manifest-Version: 1.0
Main-Class: JarExample
コンパイルされた出力クラスファイル(JarExample.class、JarExample $ 1.class)とマニフェストファイルを同じフォルダーに配置します。コマンドプロンプトで、ファイルが配置されているフォルダーに移動し、jarコマンドを使用してjarを作成します。たとえば(マニフェストファイルにjexample.mfという名前を付けた場合)
jar cfm jarexample.jar jexample.mf *.class
実行可能なjarexample.jarが作成されます。
jar cvfe jarexample.jar com.example.jar.JarExample *.class
ではEclipseの次のように、あなたは単にそれを行うことができます。
Javaプロジェクトを右クリックして、[エクスポート]を選択します。
「Java」->「実行可能なJARファイル」 ->「次へ」を選択します。
Launch Configurationを選択し、メインクラスとしてプロジェクトファイルを選択します
保存する保存先フォルダを選択し、[完了]をクリックします。
jar cvfe myjar.jar package.MainClass *.class
どこMainClass
あなたとクラスでmain
メソッドは、とpackage
あるMainClass
のは、パッケージ。
これを行う前に、.java
ファイルを.class
ファイルにコンパイルする必要があることに注意してください。
c create new archive
v generate verbose output on standard output
f specify archive file name
e specify application entry point for stand-alone application bundled into an executable jar file
この回答は、別の回答に対するPowerslaveのコメントに触発されました。
Error: Could not find or load main class mtx.testClass Caused by: java.lang.ClassNotFoundException: mtx.testClass
testClass
、あなたの1で定義された.class
ファイルは?.java
このコマンドを実行する前に、ソース()ファイルをコンパイルしたことを確認してください。また、通常、クラスはUpperCamelCaseである必要がありますTestClass
。代わりに、名前を変更してみてください。
Mavenを使用する場合は、pom.xmlファイルに以下を追加します。
<plugin>
<!-- Build an executable JAR -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<manifest>
<mainClass>com.path.to.YourMainClass</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
次に、を実行できますmvn package
。jarファイルはターゲットディレクトリの下にあります。
この質問に答えるには遅すぎます。しかし、誰かがこの答えを探しているなら、私はエラーなしで実行するようにしました。
まず、ダウンロードして追加してください Mavenをしてパスにしてください。mvn --version
パスに正しく追加した場合、[ ]はバージョン仕様を提供します。
ここで、次のコードをMavenプロジェクト[ pom.xml
]に追加します。次のコードでは、[ com.example.test.Testなどの独自のメインファイルエントリポイントに置き換えます。 ]などの。
<plugin>
<!-- Build an executable JAR -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<manifest>
<mainClass>
your_package_to_class_that_contains_main_file .MainFileName</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
次にCMD
、プロジェクトのコマンドライン[ ]に移動して、次のように入力します。mvn package
すると、ディレクトリのProjectName-0.0.1-SNAPSHOT.jar
下のようなものとしてjarファイルが生成されます target
。
次に、ターゲットに移動します ディレクトリで cd target
。
最後にjava -jar jar-file-name.jar
「はい」と入力すると、プログラムにエラーがない場合は正常に機能するはずです。