我编写了4个.java文件。问题是我只能从IDE执行我的.java文件,如何像应用程序一样执行.class文件?我在大学学习,有人告诉我Java与平台无关。任何教程/书籍推荐都将受到高度赞赏。
由于
答案 0 :(得分:9)
基本想法(给你一些搜索的东西)是:
您可能会发现在运行“干净构建”时IDE已经创建了此项。 Netbeans将其放入'dist'文件夹中。
现代JRE将允许您通过双击等运行jar。
您还可以使用JSmooth等工具将jar包装在本机可执行文件中。
答案 1 :(得分:5)
看看executable jar。这是精确的,没有任何细节Creating executable jar files。
答案 2 :(得分:4)
您使用的是什么IDE?
根据IDE,某些支持Export功能将为您创建.jar可执行文件。例如,在Eclipse中,您就有了这个选项。此外,Eclipse还有其他插件,例如Fat-Jar,其中包含您包含的任何其他不属于Sun标准库的库。
答案 3 :(得分:3)
Java文件必须通过Java虚拟机运行,因此您可以从命令行运行类文件。
如果您有一个名为 filename.java 的文件,则将其编译为 filename.class ,然后您可以通过键入 java filename从命令行运行它
答案 4 :(得分:2)
如果您想在Windows上分发您的应用程序,请查看JSmooth。
答案 5 :(得分:1)
JNLP / Web Start
答案 6 :(得分:1)
“基本想法(给你一些 要搜索的东西是:
将已编译的.class文件捆绑到 一个'罐'。将清单添加到jar中 指定要运行的主类。您 可能会发现您的IDE已经创建 当你运行'干净的构建'时。 Netbeans把它变成'dist' 文件夹。“(由Cogsy提供)
另外,要实现这一目标,您可以选择:
取决于IDE,一些支持 导出将创建的功能 .jar可执行文件给你。例如, 在Eclipse中,你有这个选择。 另外还有额外的插件 Eclipse,比如Fat-Jar,会 包括你的任何其他库 包括不属于Sun的一部分 标准库。 (来自kchau)
或者如果你要认真对待,请选择像Ant或Maven这样的构建脚本。 以下是Ant build.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>
答案 7 :(得分:1)
离开IDE并熟悉命令行工具。 java tutorial在主题here上有一条路径(选择Windows或Solaris / Linux部分)。