【问题标题】:How to compile and run a Netbeans java project in command line without jar file?如何在没有 jar 文件的命令行中编译和运行 Netbeans java 项目?
【发布时间】:2015-05-16 20:13:08
【问题描述】:

我有一个具有目录结构的 java Netbeans 项目:

EMailQueue/
|-build/
|-classes/
|-mailqueue/
|-nbproject/
|-src/
 |-mailqueue/
|-dist/
 |-lib/
|-build.xml
|-maifest.mf

build/classes/mailqueue/ 目录包含从src/mailqueue/ 目录中所有 .java 文件编译的所有类,dist/lib/ 包含应用程序文件中导入的所有 .jar 文件(JDK 除外)。

我想知道,如何在不使用 dist/ 目录中存在的 jar 文件的情况下运行此应用程序。

另外我想知道如果我没有类文件,那么如何编译src/mailqueue/ 中的.java 文件以在@​​987654327@ 目录中生成类文件。

PS:请给出在终端中运行的确切命令以及任何解释。

【问题讨论】:

    标签: java netbeans command-line jar netbeans-8


    【解决方案1】:

    要编译 Netbeans 项目,您需要调用 Apache ant 工具并将您的构建脚本文件通过 -f 参数传递给他们,如下所示

    ant -f ../apppath/build.xml

    这将通过构建 jar 文件来完成整个项目。 如果您查看 build.xml 文件,您将看到它仅指向 ./nbproject/build-impl.xml 文件,其中实际定义了所有必需的操作。 一旦没有参数传递给 ant,它就会调用默认目标

    <target depends="test,jar,javadoc" description="Build and test whole project." name="default"/>
    

    您看到此任务依赖于其他三个任务。最感兴趣的是“jar”目标。

    看看这个目标 - 它取决于其他“编译”目标

    直接调用这个target需要把这个target传给ant工具

    ant -f ../apppath/build.xml 编译

    这将编译项目,但不会将它们打包到 jar 中

    ant -f ../apppath/build.xml 运行

    将编译项目并运行主类

    希望这会有所帮助。

    用纯java编译你的代码你首先需要在包含所有java文件的文件夹中运行java编译器,即调用javac。 javac -cp {所有java库文件和外部类文件的路径} *.java 一旦你全部编译没有错误,以同样的方式运行java并将它们传递给你你想要运行的主类名 java -cp {所有java库文件和外部类文件的路径} ClassName

    【讨论】:

    • 如果我将此文件提供给不了解 netbeans 的人,这些命令可以吗?简而言之,要在命令行中使用 Apache ant 之前先安装它?我试过了,我收到一条消息,“ant”是一个公认的命令。
    • 是的。需要安装 Ant。
    • 有没有办法使用 javac/java 命令编译/运行应用程序?
    • 用纯java编译你的代码你需要在包含所有java文件的文件夹中运行java compller
    • @Marks 即使我知道,但它没有用,这就是我问这个问题的原因
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-07
    • 1970-01-01
    • 2020-01-07
    • 1970-01-01
    相关资源
    最近更新 更多