Java com maven não criaria: Não é possível executar o programa “cmd” “Argumento mal formado incorporou aspas”




windows netbeans-11 (5)

Eu tive o mesmo problema com o oracle jdk 13.0.1 e o netbeans 11.1, mas funcionou para mim com o openjdk 13.0.1 ( https://jdk.java.net/13/ ).

Eu tenho uma nova instalação do netbean 11.1. Agora estou tentando criar um projeto, mas recebo a seguinte saída de erro:

Não é possível executar o programa "cmd" (no diretório "C: \ projects \ open"): O argumento malformado incorporou uma citação: "C: \ Arquivos de Programas \ 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

Eu construí este projeto com o netbeans 11.1 antes, mas tenho um novo pc. e uma nova instalação, embora tenha certeza de que não houve nenhum problema da última vez que tentei instalar tudo.


No momento em que estou escrevendo, eu tinha apenas o JDK13 instalado apenas na minha máquina. Depois de descompactar meu netbeans, eu tenho o mesmo problema com o maven interno do meu netbeans 11.1.

Aparentemente, o netbeans 11.1 não funciona corretamente com o JDK13. Acabei de instalar o JDK 8 e o problema agora está resolvido, sem nenhuma configuração adicional ou alteração de parâmetro.

No entanto, como preciso do JDK13, os dois foram instalados, mas meu arquivo netbeans.conf está apontando para o JDK8. Posteriormente, você pode definir a nova plataforma Java na configuração do projeto netbeans.

Espero que isso possa ajudar.

Felicidades!


O problema também ocorre na versão jdk-8u231. Corrigindo a instalação da versão jdk-8u221


Parece acontecer com toda a versão jdk lançada recentemente (11.0.5 e 13.0.1 pelo menos), mesmo com o Netbeans 11.2vc1 mais recente (e testemunhado no NB 11.1 também). Faça o downgrade do seu jdk para 11.0.4 ou 13.0.0. Corrigiu o problema para mim


Verifiquei as notas de versão do JDK 13.0.1 em https://www.oracle.com/technetwork/java/javase/13-0-1-relnotes-5592797.html#JDK-8221858

Esse comportamento é uma regressão de uma correção de segurança para JDK-8221858 (não público). Siga o link para uma descrição completa. A correção faz parte do JDK 8u231, JDk 11.0.5, 13.0.1 etc.

Para resolver esse problema, acrescente -J-Djdk.lang.Process.allowAmbiguousCommands=true a netbeans_default_options em <netbeans-dir>\etc\netbeans.conf .





netbeans-11