我无法运行Maven Netbeans JavaFX示例:
无法执行目标org.codehaus.mojo:exec-maven-plugin:1.2.1:exec(default-cli)on project mavenproject3:命令执行失败。流程退出 错误:1(退出值:1) - > [帮助1]
要查看错误的完整堆栈跟踪,请使用-e重新运行Maven 开关。使用-X开关重新运行Maven以启用完整的调试日志记录。
我的POM看起来像这样:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.huw.almexoffice.client</groupId>
<artifactId>almex-office-client</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Almex Office Client</name>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<mainClass>com.huw.almexoffice.client.MainApp</mainClass>
</properties>
<organization>
<!-- Used as the 'Vendor' for JNLP generation -->
<name>Your Organisation</name>
</organization>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.6</version>
<executions>
<execution>
<id>unpack-dependencies</id>
<phase>package</phase>
<goals>
<goal>unpack-dependencies</goal>
</goals>
<configuration>
<excludeScope>system</excludeScope>
<excludeGroupIds>junit,org.mockito,org.hamcrest</excludeGroupIds>
<outputDirectory>${project.build.directory}/classes</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<id>unpack-dependencies</id>
<phase>package</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>${java.home}/../bin/javafxpackager</executable>
<arguments>
<argument>-createjar</argument>
<argument>-nocss2bin</argument>
<argument>-appclass</argument>
<argument>${mainClass}</argument>
<argument>-srcdir</argument>
<argument>${project.build.directory}/classes</argument>
<argument>-outdir</argument>
<argument>${project.build.directory}</argument>
<argument>-outfile</argument>
<argument>${project.build.finalName}.jar</argument>
</arguments>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<compilerArguments>
<bootclasspath>${sun.boot.class.path}${path.separator}${java.home}/lib/jfxrt.jar</bootclasspath>
</compilerArguments>
</configuration>
</plugin>
</plugins>
</build>
有谁知道为什么会这样?
如果没有,有没有人知道如何通过Netbeans使用-e或-X开关运行Maven?我假设是通过右键单击POM然后运行目标然后在文本字段中输入内容。
答案 0 :(得分:4)
我做了以下事情:
我不会构建或清理构建它。希望能帮到你。
答案 1 :(得分:1)
发生了什么事?你没有显示出能够决定的大部分输出。如果您使用的是netbeans 7.4,请尝试在保存时禁用编译。
启用调试输出,运行Custom&gt;目标...来自项目弹出窗口或运行常规构建后的操作,单击输出工具栏中的“重新运行选项”操作
答案 2 :(得分:1)
出现同样的问题,我通过改变来解决这个问题 $ {java.home} /../斌/的javafxpackager 至 $ {java.home} /斌/的javafxpackager
答案 3 :(得分:1)
在Ubuntu 13.10 x64上安装oracle jdk后出现同样的问题。
我已经完成了以下步骤,不确定哪一个有帮助。我认为至少需要2和3个。
此外,在那之后,我发现该项目运行,但退出时使用退出代码1,因为我没有为它提供命令行参数。而建造者认为这是一个错误。因此,仔细查看输出并查看程序是否实际启动。
答案 4 :(得分:1)
我是Maven的初学者 - 对此并不了解。 仔细检查您的输入,即我的案例中的文件路径。 仔细检查后,我的文件路径错误,导致此错误。 在我修好之后,它神奇地工作了。
答案 5 :(得分:1)
在我的案例中有效的解决方案是:
1.转到具有Main类的模块
2.右键单击此模块下的pom.xml
3.选择“Run Maven” - &gt; “UpdateSnapshots”
答案 6 :(得分:1)
Maven需要能够访问各种Maven存储库,以便将工件下载到本地存储库。如果本地系统通过代理主机访问Internet,则可能需要通过编辑Maven dragPan: false
文件显式指定Maven的代理设置。 Maven构建忽略在“选项”窗口中设置的IDE代理设置。
对于许多常见情况,只需将settings.xml
传递给Maven就足以通过系统配置的代理下载工件。如果检测到可能的代理问题,NetBeans 7.1将为您配置此标志。 https://netbeans.org/bugzilla/show_bug.cgi?id=194916进行了讨论。
答案 7 :(得分:1)
我通过右键单击项目解决了这个问题 - &gt;设为主项目。
答案 8 :(得分:1)
Netbeans需要能够为maven存储库编制索引。允许它执行此操作并重试。它给了我同样的错误,在它为存储库编制索引后,它就像一个魅力
答案 9 :(得分:1)
我遇到了同样的问题。当我尝试从IDE运行项目时,它给了我同样的错误。但是当我尝试从命令提示符运行时,项目运行正常。所以在我看来,使程序从IDE运行的设置应该存在一些问题。
我通过更改一些项目设置解决了这个问题。我跟踪了错误,并在我的pom.xml文件中找到了以下部分。
<execution>
<id>default-cli</id>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>${java.home}/bin/java</executable>
<commandlineArgs>${runfx.args}</commandlineArgs>
</configuration>
</execution>
我去了我的项目属性&gt;行动类别&gt;行动:运行项目: 然后我按如下方式设置运行项目操作的属性:
runfx.args=-jar "${project.build.directory}/${project.build.finalName}.jar"
然后,我重建了项目,并且我能够运行项目。正如您所看到的,IDE(在我的情况下是Netbeans)无法找到&#39; runfx.args&#39;在项目属性中设置。
答案 10 :(得分:1)
重新启动Netbeans,它解决了我的问题。
答案 11 :(得分:0)
尝试从命令行运行Maven或输入&#34; -X&#34;在文本字段中 - 你不能以这种方式破坏任何东西,最糟糕的是,你会得到一个错误(我没有Netbeans;在Eclipse中,有一个复选框&#34; Debug& #34;为此)。
在启用调试输出的情况下运行时,您应该看到exec-maven-plugin插件使用的路径。
然后,下一步是将命令复制到命令提示符或终端并手动执行,以查看是否在那里收到有用的错误消息。
答案 12 :(得分:0)
我是java休眠的新手,但我可以解决此问题,这是我的方法: 我正在休眠和Maven项目。 首先,您必须将persistence.xml放在项目目录下,然后手动添加jdbc。 Maven无法下载我的依赖项,因此我手动添加了它。 在设计jdbc连接中的persistence.xml中,手动将其添加ps:我与netbeans一起运气很好
答案 13 :(得分:0)
对我来说,线索是“ org.codehaus.mojo:exec-maven-plugin:1.2.1:exec”。
唯一引用此位置的地方是Project Properties => Actions下的“运行项目”操作。
当我更改此操作以匹配HelloFXMLWithMaven示例项目(在Netbeans 11.1中可用)时: “干净的javafx:运行” 然后执行“运行”目标就可以继续进行。
请注意,我还必须更新pom文件的javafx-maven-plugin以匹配示例项目,但我的项目已更改了mainClass。