Java con Maven non si costruisce: impossibile eseguire il programma "cmd" "L'argomento non valido ha un preventivo incorporato"


20

Ho una nuova installazione di netbean 11.1. Ora sto provando a costruire un progetto ma ottengo il seguente output di errore:

Impossibile eseguire il programma "cmd" (nella directory "C: \ projects \ open"): l'argomento non valido ha una citazione incorporata: "C: \ Programmi \ 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

Ho creato questo progetto con netbeans 11.1 prima ma ho un nuovo pc. e una nuova installazione, quindi sono sicuro che non ci sono stati problemi l'ultima volta che ho provato a installare tutto.

Risposte:


14

Sebbene questo problema possa essere risolto installando jdk1.8.0_221, in realtà non è necessario eseguire il downgrade del JDK. Prova questi:

  1. Prima uscite da netbeans IDE se è aperto, quindi aprite il file di configurazione netbeans da qui: netbeans-Install-Dir / etc / netbeans.conf (Nota: per me netbeans-Install-Dir è C: \ Programmi \ NetBeans 8.2 \ etc)
  2. Aggiungi gli argomenti seguenti
-J-Djdk.lang.Process.allowAmbiguousCommands=true
  1. all'inizio della stringa che trovi in ​​questa riga:
netbeans_default_options="-J-client -J-Xss2m -J-Xms32m ......."

Schermata di esempio come mostrato di seguito: 4. Salvare la modifica e avviare l'IDE di netbeans.inserisci qui la descrizione dell'immagine


Questa dovrebbe essere la risposta accettata
ryvantage il

funziona, grazie mille!
Miguel Rodríguez,

53

Ho controllato le note di rilascio per JDK 13.0.1 su https://www.oracle.com/technetwork/java/javase/13-0-1-relnotes-5592797.html#JDK-8221858

Questo comportamento è una regressione da una correzione di sicurezza per JDK-8221858 (non pubblica). Segui il link per una descrizione completa. La correzione fa parte di JDK 8u231, JDk 11.0.5, 13.0.1 ecc.

Per risolvere questo problema, aggiungi -J-Djdk.lang.Process.allowAmbiguousCommands=truea netbeans_default_optionsin <netbeans-dir>\etc\netbeans.conf.


1
Gli sviluppatori di Netbeans hanno raccolto questa e altre recenti segnalazioni di problemi e all'ultima versione di sviluppo (che sarà la 11.2) è stata applicata questa correzione, vedi lists.apache.org/thread.html/…
Peter Hull,

7

Per caso hai installato l'ultimo aggiornamento critico per Java? jdk 1.7_241? L'ho installato oggi e stavo avendo lo stesso identico problema. Ho declassato la mia versione di jdk e l'ho risolta completamente.

EDIT: Mi scuso, ho notato che stai usando netbeans 11.1 quindi probabilmente hai una versione java successiva, in ogni caso, potresti provare a declassare la tua versione java a una versione precedente se ti è capitato di aggiornarla oggi poiché l'altra versione potrebbe avere stesso problema.


2
aver risolto l'installazione di jdk1.8.0_221
busyBee il

Il downgrade di JDK non è una soluzione ideale. Di seguito è riportata un'opzione migliore che comporta la modifica del file netbeans.conf.
ryvantage il

5

Al momento in cui scrivo, avevo installato solo JDK13 sul mio computer. Dopo aver decompresso i miei netbeans, ho lo stesso problema con la memoria interna dei miei netbeans 11.1.

Apparentemente netbeans 11.1 non funziona correttamente con JDK13. Ho appena installato JDK 8 e il problema ora è risolto, senza alcuna configurazione aggiuntiva o modifica dei parametri.

Tuttavia, poiché ho bisogno del JDK13, ho installato entrambi ma il mio file netbeans.conf punta a JDK8. Successivamente, è possibile definire la nuova piattaforma Java nella configurazione del progetto netbeans.

Spero che questo possa aiutare.

Saluti!


1
lo stesso vale per jdk-11.0.5
busyBee,

5

Ho avuto questo errore con adopt8-hotspot (AdoptOpenJDK-1.8.0_232-b09)e sbt-0.13.Xper un vecchio progetto.

Problema risolto dopo aver impostato la variabile di ambiente in Windows tramite

set JAVA_TOOL_OPTIONS=-Djdk.lang.Process.allowAmbiguousCommands=true

1

Sembra accadere con tutte le versioni jdk rilasciate di recente (almeno 11.0.5 e 13.0.1), anche con l'ultimo Netbeans 11.2vc1 (e testimoniato anche su NB 11.1). Esegui il downgrade di jdk a 11.0.4 o 13.0.0. Mi ha risolto il problema


1

Il problema si verifica anche nella versione jdk-8u231. Correzione dell'installazione della versione jdk-8u221


0

Apache NetBeans 11.1 in effetti non supporta JDK 13, ecco a cosa serve Apache NetBeans 11.2 in arrivo - ultima beta: bit.ly/apache-netbeans-11-2-beta-3



0

basta aggiungere -J-Djdk.lang.Process.allowAmbiguousCommands = true per netbeans_default_options in netbeans.conf

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.