[英]Netbeans java maven project builds sucesfully, but won't run
当我清理和构建时,项目显示“构建成功”,我可以看到在目标文件夹中创建的 .jar 文件,但是当我尝试运行或调试主类时,netbeans 显示“错误:无法找到或加载主类……”? 我可以从命令行运行 .jar 文件。
编辑:这是一个 javaFx 项目。
可能是由于某些原因,您可以尝试以下方法:
我已经部分解决了这个问题。 看来netbeans 对javaFX 项目有一些问题。 我发现了几个表明问题的网站。
我能够通过创建一个新的 Maven/JavaFX 应用程序来使其工作,然后我从该项目中获取 nbactions.xml 文件并替换了我项目中的 nbactions.xml。 之后,我可以通过选择主项目节点并使用工具栏上的运行/调试按钮来运行应用程序。 右键单击 Main 类并选择运行或调试仍然不起作用。 感谢@skomisa 提醒我有不止一种方法可以运行一个项目!
这是我复制的有效的 nbactions.xml 文件:
<?xml version="1.0" encoding="UTF-8"?>
<actions>
<action>
<actionName>run</actionName>
<goals>
<goal>clean</goal>
<goal>package</goal>
<goal>org.codehaus.mojo:exec-maven-plugin:1.2.1:exec</goal>
</goals>
<properties>
<runfx.args>-jar "${project.build.directory}/${project.build.finalName}.jar"</runfx.args>
</properties>
</action>
<action>
<actionName>debug</actionName>
<goals>
<goal>clean</goal>
<goal>package</goal>
<goal>org.codehaus.mojo:exec-maven-plugin:1.2.1:exec</goal>
</goals>
<properties>
<runfx.args>-Xdebug -Xrunjdwp:transport=dt_socket,server=n,address=${jpda.address} -Dglass.disableGrab=true -jar "${project.build.directory}/${project.build.finalName}.jar"</runfx.args>
<jpda.listen>true</jpda.listen>
</properties>
</action>
</actions>
这是以前无效的 nbactions.xml 文件的示例。 请注意,运行和调试操作的属性有很大不同。
<?xml version="1.0" encoding="UTF-8"?>
<actions>
<action>
<actionName>run</actionName>
<packagings>
<packaging>jar</packaging>
</packagings>
<goals>
<goal>process-classes</goal>
<goal>org.codehaus.mojo:exec-maven-plugin:1.2.1:exec</goal>
</goals>
<properties>
<exec.args>-classpath %classpath com.edulog.athenaprobe.MainApp</exec.args>
<exec.executable>java</exec.executable>
</properties>
</action>
<action>
<actionName>debug</actionName>
<packagings>
<packaging>jar</packaging>
</packagings>
<goals>
<goal>process-classes</goal>
<goal>org.codehaus.mojo:exec-maven-plugin:1.2.1:exec</goal>
</goals>
<properties>
<exec.args>-Xdebug -Xrunjdwp:transport=dt_socket,server=n,address=${jpda.address} -classpath %classpath com.edulog.athenaprobe.MainApp</exec.args>
<exec.executable>java</exec.executable>
<jpda.listen>true</jpda.listen>
</properties>
</action>
</actions>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.