I unzipped NetBeans 11 to C:\netbeans
, installed several versions of the JDK to C:\java
and created a test class within NetBeans containing a main method and one line of code System.out.print("hello world");
. When I click the Run Project button, the output window shows the command:
cd C:\Users\MyUsername\Documents\NetBeansProjects\asdf;
JAVA_HOME=C:\\Java\\jdk1.8.0_231 cmd /c "\"\"C:\\netbeans-9\\java\\maven\\bin\\mvn.cmd\"
-Dexec.args=\"-classpath %classpath com.mycompany.asdf.Test\"
-Dexec.executable=C:\\Java\\jdk1.8.0_231\\bin\\java.exe
-Dmaven.ext.class.path=C:\\netbeans-9\\java\\maven-nblib\\netbeans-eventspy.jar
-Dfile.encoding=UTF-8 process-classes org.codehaus.mojo:exec-maven-plugin:1.5.0:exec\""
followed by the error:
Cannot run program "cmd" (in directory "C:\Users\MyUsername\Documents\NetBeansProjects\asdf"): Malformed argument has embedded quote: "C:\netbeans-9\java\maven\bin\mvn.cmd" -Dexec.args="-classpath %classpath com.mycompany.asdf.Test" -Dexec.executable=C:\Java\jdk1.8.0_231\bin\java.exe -Dmaven.ext.class.path=C:\netbeans-9\java\maven-nblib\netbeans-eventspy.jar -Dfile.encoding=UTF-8 process-classes org.codehaus.mojo:exec-maven-plugin:1.5.0:exec
Whether the class creates a GUI or not, it gives the same error. I've tried NetBeans 9, 10, and 11 with JDK 7, 8, and 11. Am I missing something during setup, or do I have something in a wrong directory somewhere? I'm lost.
No need to downgrade the JDK, just add this in your netbeans.conf
Find your netbeans.conf
file. e.g.: netbeansIstallDir/etc/netbeans.conf
Find the key netbeans_default_options
and at the start of the string add the following: -J-Djdk.lang.Process.allowAmbiguousCommands=true
It should look like this:
netbeans_default_options="-J-Djdk.lang.Process.allowAmbiguousCommands=true..."
No need to downgrade to an older JDK version, check my answer at https://stackoverflow.com/a/58484737 for a solution and the background of the change.
Fixed this issue by installing jdk1.8.0_221 as suggested here:
Java with maven wouldn't build: Cannot run program "cmd" "Malformed argument has embedded quote"
Hope this will help you too
Find the key netbeans_default_options and at the start of the string add the following: -J-Djdk.lang.Process.allowAmbiguousCommands=true
It should look like this:
netbeans_default_options="-J-Djdk.lang.Process.allowAmbiguousCommands=true..."
this if form Omer Erden, congrats...
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With