4

我编写了 4 个 .java 文件。问题是我只能从 IDE 执行 .java 文件,如何像应用程序一样执行 .class 文件?我在大学学习,有人告诉我 Java 是独立于平台的。任何教程/书籍推荐将不胜感激。

谢谢

4

8 回答 8

9

基本思想(给你一些搜索的东西)是:

  • 将已编译的 .class 文件捆绑到“jar”中。
  • 将清单添加到您的 jar 中,指定要运行的主类。

当您运行“干净构建”时,您可能会发现您的 IDE 已经创建了它。Netbeans 将其放入“dist”文件夹中。

现代 JRE 将允许您通过双击它等来运行 jar。

您还可以通过使用诸如 JSmooth 之类的工具将 jar 包装在本机可执行文件中来更进一步。

于 2009-01-19T03:35:43.270 回答
5

查看可执行 jar。这是精确的,没有任何细节,创建可执行的 jar 文件

于 2009-01-19T03:34:03.260 回答
4

你用的是什么IDE?

根据 IDE,有些支持导出功能,可以为您创建 .jar 可执行文件。例如,在Eclipse中,您有该选项。此外,还有用于 Eclipse 的附加插件,例如Fat-Jar,它将包含您包含的任何附加库,这些库不是 Sun 标准库的一部分。

于 2009-01-19T03:52:49.197 回答
3

Java 文件必须通过 Java 虚拟机运行,因此您可以从命令行运行您的类文件。

如果您有一个名为filename.java的文件,请将其编译为filename.class ,然后您可以通过键入java filename从命令行运行它

于 2009-01-19T03:35:36.843 回答
2

如果您想在 Windows 上分发您的应用程序,请查看JSmooth

于 2009-01-20T02:51:27.883 回答
1

JNLP/Web 启动

于 2009-01-19T15:04:50.010 回答
1

“基本的想法(给你一些搜索的东西)是:

将已编译的 .class 文件捆绑到“jar”中。将清单添加到您的 jar 中,指定要运行的主类。当您运行“干净构建”时,您可能会发现您的 IDE 已经创建了它。Netbeans 把它放到一个 'dist' 文件夹中。”(by 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>
于 2009-02-04T15:34:16.637 回答
1

只需离开 IDE 并熟悉命令行工具即可。Java 教程在这里有一个关于这个主题的线索(选择 Windows 或 Solaris/Linux 部分)。

于 2009-02-04T15:57:58.117 回答