maven이있는 Java가 빌드되지 않음 :“cmd”프로그램을 실행할 수 없습니다.“잘못된 인수에 인용이 포함되어 있습니다”


20

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 로이 프로젝트를 빌드했지만 새로운 PC가 있습니다. 새로 설치하면 마지막으로 모든 것을 설치하려고 할 때 아무런 문제가 없었습니다.

답변:


13

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를 시작하십시오.여기에 이미지 설명을 입력하십시오


이것은 정답입니다
ryvantage

잘 작동합니다!
미구엘 로드리게스

53

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 등의 일부입니다.

, APPEND이 문제를 해결하려면 -J-Djdk.lang.Process.allowAmbiguousCommands=truenetbeans_default_options에서 <netbeans-dir>\etc\netbeans.conf.


1
이 수정보고, 적용했다 넷빈즈 개발자는 이것과 다른 최근의 문제 보고서 및 (11.2 예정) 최신 개발 버전에 포착 한 lists.apache.org/thread.html/...
피터 헐

7

Java에 대한 최신 중요 업데이트를 설치 했습니까? jdk 1.7_241? 나는 오늘 그것을 설치했고 똑같은 문제가있었습니다. 내 jdk 버전을 다운 그레이드하고 완전히 해결했습니다.

편집 : 사과, 나는 당신이 netbeans 11.1을 사용하고 있음을 알았으므로 아마도 최신 버전의 Java를 가지고있을 것입니다. 어쨌든, 다른 버전이있을 수 있으므로 오늘 Java 버전을 업데이트하면 이전 버전으로 다운 그레이드 할 수 있습니다 같은 문제.


2
jdk1.8.0_221 설치로 해결
busyBee

JDK를 다운 그레이드하는 것은 이상적인 솔루션이 아닙니다. netbeans.conf 파일 편집과 관련된 더 나은 옵션은 다음과 같습니다.
ryvantage

5

내가 글을 쓰는 시점에는 JDK13 만 내 컴퓨터에만 설치했습니다. 내 netbeans 압축을 푼 후 내 netbeans 11.1의 내부 maven과 동일한 문제가 발생합니다.

분명히 netbeans 11.1이 JDK13에서 제대로 작동하지 않습니다. 방금 JDK 8을 설치했는데 추가 구성이나 매개 변수 변경없이 문제가 해결되었습니다.

그럼에도 불구하고 JDK13이 필요하기 때문에 둘 다 설치되었지만 netbeans.conf 파일이 JDK8을 가리키고 있습니다. 나중에 netbeans 프로젝트 구성에서 새 Java 플랫폼을 정의 할 수 있습니다.

이것이 도움이되기를 바랍니다.

건배!


1
jdk-11.0.5와 동일
busyBee

5

나는 함께이 오류를했다 adopt8-hotspot (AdoptOpenJDK-1.8.0_232-b09)sbt-0.13.X오래된 프로젝트.

Windows에서 환경 변수를 설정 한 후 문제가 해결되었습니다.

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

1

최신 Netbeans 11.2vc1 (및 NB 11.1에서도 목격 됨)에서도 최근에 출시 된 모든 jdk 버전 (적어도 11.0.5 및 13.0.1)에서 발생하는 것으로 보입니다. jdk를 11.0.4 또는 13.0.0으로 다운 그레이드하십시오. 나를 위해 문제를 해결했습니다.



0

Apache NetBeans 11.1은 실제로 JDK 13을 지원하지 않으므로 곧 출시 될 Apache NetBeans 11.2가 최신 베타 버전입니다 : 최신 베타 : bit.ly/apache-netbeans-11-2-beta-3



0

netbeans.conf의 netbeans_default_options에 -J-Djdk.lang.Process.allowAmbiguousCommands = true를 추가하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.