如何确定Netbeans正在执行哪个命令来运行项目?

时间:2017-03-29 12:10:28

标签: java maven netbeans

我正在使用Netbeans和Maven开发Java应用程序。作为独立的应用程序,我正在努力运行该项目。从Netbeans启动项目一切正常,但运行可执行jar会产生错误(无法加载数据文件)。

我需要知道完全 Netbeans正在执行哪些命令来运行应用程序。但是,Netbeans的输出窗口只显示应用程序“返回”的内容。有没有办法找出/显示Netbeans用来运行项目的命令?

由于

编辑:运行java应用程序并加载文件这里的问题。我能够运行应用程序并正确加载库。这里的问题是了解Netbans如何运行应用程序(通过查看执行的命令)。

3 个答案:

答案 0 :(得分:2)

NetBeans 编译程序时,它会创建一个包含已编译.class文件的文件夹层次结构。在存档中创建 JAR 存档 ZIP 时。执行程序时,(或调试) NetBeans 会从文件夹中运行.class个文件,而不会在 JAR 文件中运行。

这些可能导致不同的问题,例如不同的 PATH 。这可能导致找不到文件"相对路径的错误。

答案 1 :(得分:2)

Netbeans 输出它调用的命令作为输出的第一行。

我使用 Netbeans 8.2 ,以及当我在maven项目中点击绿色运行按钮时的样子:

Netbeans Output

第一行读取(格式化以获得更好的可读性):

cd D:\test;
"JAVA_HOME=C:\\Program Files\\Java\\jdk1.8.0_112" 
"M2_HOME=C:\\Program Files\\apache-maven-3.3.3"
cmd /c "\"\"C:\\Program Files\\apache-maven-3.3.3\\bin\\mvn.cmd\"
    -Dexec.args=\"-classpath %classpath com.test.AppStarter\"
    -Dexec.executable=\"C:\\Program Files\\Java\\jdk1.8.0_112\\bin\\java.exe\"
    -Dexec.workingdir=D:\\test\\target\\dist
    -Dmaven.ext.class.path=\"C:\\Program Files\\NetBeans 8.2\\java\\maven-nblib\\netbeans-eventspy.jar\"
    -Dfile.encoding=UTF-8
    org.codehaus.mojo:exec-maven-plugin:1.2.1:exec\""

从那一行我可以看出 Netbeans

  • 转到项目目录
  • 设置环境变量(JAVA_HOMEM2_HOME
  • 然后执行执行cmd的{​​{1}}(按其完整路径)
    • 带有一堆mvn个参数(指定工作目录,-D作为要执行的类)
    • AppStarter与目标exec-maven- plugin

答案 2 :(得分:0)

你的操作系统是什么?

<强>窗口: 然后wmic可能是工具,它可以显示完整的命令行。你会在这里找到例子command line of process by name

<强>的Linux: 尝试     ps -ef | grep java