4つの.javaファイルをコーディングしました。.javaファイルはIDEからしか実行できませんが、アプリケーションのように.classファイルを実行するにはどうすればよいですか?私は大学で勉強していますが、Javaはプラットフォームに依存しないと言われました。チュートリアル/本の推奨事項をいただければ幸いです。
ありがとう
4つの.javaファイルをコーディングしました。.javaファイルはIDEからしか実行できませんが、アプリケーションのように.classファイルを実行するにはどうすればよいですか?私は大学で勉強していますが、Javaはプラットフォームに依存しないと言われました。チュートリアル/本の推奨事項をいただければ幸いです。
ありがとう
基本的な考え方(検索するものを提供するため)は次のとおりです。
「クリーンビルド」を実行すると、IDEがすでにこれを作成していることに気付くかもしれません。Netbeansはこれを「dist」フォルダに入れます。
最新のJREでは、jarをダブルクリックするなどして実行できます。
JSmoothなどのツールを使用して、jarをネイティブ実行可能ファイルでラップすることにより、もう少し先に進むこともできます。
実行可能jarを見てください。これが正確なもので、詳細はありません。実行可能なjarファイルの作成です。
どのIDEを使用していますか?
IDEによっては、.jar実行可能ファイルを作成するエクスポート機能をサポートするものもあります。たとえば、Eclipseにはそのオプションがあります。さらに、 Fat-JarなどのEclipse用の追加のプラグインがあり、Sunの標準ライブラリの一部ではない追加のライブラリが含まれます。
JavaファイルはJava仮想マシンを介して実行する必要があるため、コマンドラインからクラスファイルを実行できます。
filename.javaという名前のファイルがある場合は、それをfilename.classにコンパイルしてから、 javafilenameと入力してコマンドラインから実行できます。
アプリケーションを Windows に配布する場合は、JSmoothを調べてください。
JNLP / Web Start
「(検索するものをいくつか提供するための)基本的な考え方は次のとおりです。
コンパイルした.classファイルを「jar」にバンドルします。実行するメインクラスを指定するマニフェストをjarに追加します。「クリーンビルド」を実行すると、IDEがすでにこれを作成していることに気付くかもしれません。Netbeansはこれを「dist」フォルダに入れます。」(Cogsyによる)
さらに、これを実現するには、次のいずれかを選択できます。
IDEによっては、.jar実行可能ファイルを作成するエクスポート機能をサポートするものもあります。たとえば、Eclipseにはそのオプションがあります。さらに、Fat-JarなどのEclipse用の追加のプラグインがあり、Sunの標準ライブラリの一部ではない追加のライブラリが含まれます。(kchauによる)
または、深刻な問題に取り組む場合は、AntやMavenなどのビルドスクリプトを選択してください。Antbuild.xmlスクリプトの例を次に示します。
<project name="jar with libs" default="compile and build" basedir=".">
<!-- this is used at compile time -->
<path id="example-classpath">
<pathelement location="${root-dir}" />
<fileset dir="D:/LIC/xalan-j_2_7_1" includes="*.jar" />
</path>
<target name="compile and build">
<!-- deletes previously created jar -->
<delete file="test.jar" />
<!-- compile your code and drop .class into "bin" directory -->
<javac srcdir="${basedir}" destdir="bin" debug="true" deprecation="on">
<!-- this is telling the compiler where are the dependencies -->
<classpath refid="example-classpath" />
</javac>
<!-- copy the JARs that you need to "bin" directory -->
<copy todir="bin">
<fileset dir="D:/LIC/xalan-j_2_7_1" includes="*.jar" />
</copy>
<!-- creates your jar with the contents inside "bin" (now with your .class and .jar dependencies) -->
<jar destfile="test.jar" basedir="bin" duplicate="preserve">
<manifest>
<!-- Who is building this jar? -->
<attribute name="Built-By" value="${user.name}" />
<!-- Information about the program itself -->
<attribute name="Implementation-Vendor" value="ACME inc." />
<attribute name="Implementation-Title" value="GreatProduct" />
<attribute name="Implementation-Version" value="1.0.0beta2" />
<!-- this tells which class should run when executing your jar -->
<attribute name="Main-class" value="ApplyXPath" />
</manifest>
</jar>
</target>
</project>