带有 Maven 的 Java 无法构建:无法运行程序“cmd”“格式错误的参数已嵌入引号”

新手上路,请多包涵

我全新安装了 netbean 11.1。现在我正在尝试构建一个项目,但我得到以下错误输出:

无法运行程序“cmd”(在目录“C:\projects\open”中):格式错误的参数嵌入了引号:“C:\Program Files\NetBeans-11.1\netbeans\java\maven\bin\mvn.cmd”

 cd C:\projects\open; "JAVA_HOME=C:\\Program Files\\Java\\jdk-11.0.5" cmd /c "\"\"C:\\Program Files\\NetBeans-11.1\\netbeans\\java\\maven\\bin\\mvn.cmd\" -DskipTests=true -Dmaven.ext.class.path=\"C:\\Program Files\\NetBeans-11.1\\netbeans\\java\\maven-nblib\\netbeans-eventspy.jar\" -Dfile.encoding=UTF-8 clean install\"" Cannot run program "cmd" (in directory "C:\projects\open"): Malformed argument has embedded quote: "C:\Program Files\NetBeans-11.1\netbeans\java\maven\bin\mvn.cmd" -DskipTests=true -Dmaven.ext.class.path="C:\Program Files\NetBeans-11.1\netbeans\java\maven-nblib\netbeans-eventspy.jar" -Dfile.encoding=UTF-8 clean install

我以前用 netbeans 11.1 构建过这个项目,但有一台新电脑。和全新安装,我确信上次我尝试安装所有内容时没有问题。

原文由 busyBee 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 695
2 个回答

虽然这个问题可以通过安装jdk1.8.0_221来解决,但是实际上你不需要降级你的JDK。试试这些:

  1. 首先退出 netbeans IDE(如果它是打开的),然后从这里打开 netbeans 配置文件:netbeans-Install-Dir/etc/netbeans.conf(注意:对我来说 netbeans-Install-Dir 是 C:\Program Files\NetBeans 8.2\etc)
  2. 添加以下参数
-J-Djdk.lang.Process.allowAmbiguousCommands=true

  1. 到您在此行找到的字符串的开头:
 netbeans_default_options="-J-client -J-Xss2m -J-Xms32m ......."

示例截图如下: 在此处输入图像描述

4. 保存更改并启动您的 netbeans IDE。

原文由 Ali Safari 发布,翻译遵循 CC BY-SA 4.0 许可协议

我已经在 https://www.oracle.com/technetwork/java/javase/13-0-1-relnotes-5592797.html#JDK-8221858 查看了 JDK 13.0.1 的发行说明

此行为是 JDK-8221858(非公开)安全修复程序的倒退。点击链接获取完整说明。该修复程序是 JDK 8u231、JDk 11.0.5、13.0.1 等的一部分。

要解决此问题,请将 -J-Djdk.lang.Process.allowAmbiguousCommands=true 附加到 netbeans_default_options 中的 <netbeans-dir>\etc\netbeans.conf

原文由 Sephiroth 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题