Maven 빌드 실패: "Javac 컴파일러를 찾을 수 없음: jre 또는 jdk 문제"
JAVA_가 있습니다.홈 설정 대상:
C:\Program Files (x86)\Java\jdk1.6.0_18
maven install
Eclipse로부터 다음과 같은 메시지를 받았습니다.
이유:
Unable to locate the Javac Compiler in:
C:\Program Files (x86)\Java\jre6\..\lib\tools.jar
Please ensure you are using JDK 1.4 or above and
not a JRE (the com.sun.tools.javac.Main class is required).
In most cases you can change the location of your Java
installation by setting the JAVA_HOME environment variable.
이 부분이 어려운 부분이라고 확신합니다.
JRE가 아닌 JDK 1.4 이상을 사용하고 있는지 확인하십시오.
구성을 실행하면 JRE6로 설정됩니다.이미 설치한 JDK 1.6으로 변경하려면 어떻게 해야 하나요?
플러그인 수정도 시도했습니다.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<executable>C:\Program Files (x86)\Java\jdk1.6.0_18\bin</executable>
</configuration>
</plugin>
여전히 같은 오류가 발생합니다.
이클립스 메이븐 플러그인을 사용합니다.Eclipse에서 JRE에서 JDK로 변경하려면 어떻게 해야 합니까?
다음과 같이 Eclipse에서 사용 중인 JDK를 업데이트할 수 있습니다.
Window(윈도우) → Preferences(기본 설정) 메뉴에서 JRE를 추가하고 설정합니다.→ Java → 설치된 JRE:
JRE type: Standard VM JRE
Name: jdk1.6.0_18
JRE home directory: C:\Program Files (x86)\Java\jdk1.6.0_18
그렇지 않은 경우 괄호 및 공백이 JAVA_에 있을 수 있습니다.HOME 패스로 문제가 발생.JDK 를 다른 장소에 카피하고, JAVA_HOME 를 갱신해 주세요.
파일 이클립스.ini에는vm
JDK를 사용하다
eclipse.ini
홈을 입니다.- JDK の 음음음 file file file file file 。
-vm
C:\Program Files\Java\jdk1.6.0_06
이렇게 하면 Eclipse가 JDK에서 실행되고 컴퓨터의 기본 JRE에서 실행되지 않습니다.
시도:
★★★★★★★★★★★★★★★로 이동Preferences/Java/Installed JREs
'1번'이라는 됩니다."C:\Program Files\Java\jdk1.6.0_27\jre
★★★★★★★★★★★★★★★★★★★★★★★★★★★
. 음. remove remove음 remove remove remove remove 。C:\Program Files\Java\jre6
바와 같이 '하다', '하다', '하다', '하다', '하다', '하다'라는입니다.C:\Program Files\Java\jre6\..\lib\tools.jar
부분이 "/"로 .까지)을 다음으로 교환하는 경우에만 의미가 있습니다.C:\Program Files\Java\jdk1.6.0_27\jre
.
fork를 true로 설정하면 문제가 해결되었습니다.
<configuration>
<fork>true</fork>
<source>1.6</source>
<target>1.6</target>
</configuration>
나도 똑같은 문제가 있었어!iniar에서 "-vm c:\program files\java\jdkxxxx\bin을 바로가기 인수로 넣으세요"에 대한 모든 옹알이가 전혀 도움이 되지 않았기 때문에 며칠 동안 계속 검색해 보았습니다.
(제가 답답한 것처럼 들리나요?날 믿어, 그건 절제된 표현이야!Maven을 믿을 수 있게 하려고 일주일이나 허비했기 때문에 화가 납니다!)
을 사용하다어떤 때는 편찬하고 어떤 때는 그렇지 않다. 내가 약가면면면면면면면면면면 maven clean
이치노그 후 빌드 경로에서 무언가를 변경했을 경우, 갑자기 다시 동작했습니다.
메뉴로 이동하기 전까지 Window → Preferences → Java → Installed JREs.JDK의 위치를 사용하여 새로운 JRE를 추가하고 JRE를 삭제했습니다.갑자기 메이븐이 안정되게 뛰었어요!
Apache 매뉴얼에 글자 크기가 30 정도 되는 글자를 넣을 가치가 있을까요?
외람된 말씀이지만, Java 커뮤니티에 있어서 이것은 정말 말도 안 되는 일입니다!이런 문제를 해결하려고 애쓰는 이 사람들이 얼마나 많은 날을 허비했는지 상상이 안 가!저는 이것이 최종 버전으로 출시되는 것을 상상할 수 없습니다.나는 개인적으로 베타 소프트웨어라는 이름으로 그런 것을 출시할 엄두가 나지 않는다.
어느쪽이든 잘 부탁드립니다.일주일간의 조작 끝에 드디어 개발을 시작할 수 있게 되었습니다.제 상사가 이 사실을 알아채지 못했으면 좋겠어요.그에게 가지 말라고 설득하는 데는 많은 노력이 필요했다.NET과 저는 이미 그것에 대해 유감스럽게 생각합니다.
Eclipse에서 -> Maven 설치와 같은 문제가 발생하였습니다.JAVA_HOME 및 이클립스ini는 괜찮았고 내 최신 JDK를 가리키고 있었다.하지만 m2clipse는 JRE를 사용했다.Eclipse 외부에서 mvn 설치를 사용하면 정상 작동했습니다!
제 경우는 다음과 같이 문제를 해결했습니다.
- Eclipse에서 탐색: 메뉴 창 → 기본 설정 → Java → 설치된 JRE
- JRE와 JDK에는 2개의 비활성 엔트리가 있습니다.액티브한 것은, 마지막에 인스톨 된 JDK입니다.Maven이 사용해야 하는 엔트리를 제외한 모든 엔트리를 삭제합니다.
메이븐은 어느 쪽이 활동적인지 고려하지 않는 것 같아요
다른 JDK를 사용한 컴파일 소스를 기반으로 pom.xml 파일에서 fork를 true로 설정해야 합니다.
3.0하고, 「Maven 3.0.4」를 설정했습니다.M2_HOME
,M2
★★★★★★★★★★★★★★★★★」JAVA_HOME
다음 을 실행했습니다.그런 다음 다음 명령을 실행했습니다.
mvn archetype:generate....
mvn compile
', 실패하다'와같은 요.maven unable to locate javac compiler
.
컴퓨터에서는 기본적으로 C:\program files\java\jre.1.6에 JRE가 설치되어 있습니다.다른 C:\java\jdk1.6과JAVA_HOME
이 C:\java\jdk1.6으로 설정합니다.
저는 제 설정에 아무런 문제가 없다고 생각했어요.본 결과, .mvn.bat
라고 나는 되뇌었다.%JAVA_HOME%
한 걸음 내디딜 때마다 요.C:\java\jdk1.6
,mvn --version
, Java 홈을 표시했습니다.C:\program files\java\jre1.1.6.
드디어 아, 아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아.-Djava.home=c:\java\jdk1.6
현재 정상적으로 동작하고 있습니다.
%MAVEN_JAVA_EXE% %MAVEN_OPTS% -classpath %CLASSWORLDS_JAR% "-Dclassworlds.conf=%M2_HOME%\bin\m2.conf" "-Djava.home=%JAVA_HOME%" "-Dmaven.home=%M2_HOME%" %CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS%
은 ★★★★★★★★★★★★★★★★★★★★★★★★★★.mvn
이클립스가 아니라 명령줄에서요
설치된 JRE의 위치를 JDK 자체에 있는 디렉토리로 변경하여 문제를 해결했습니다.「」의 값 JAVA_HOME
환경변수로 문제가 해결되지 않았습니다.
제 경우, 두 개의 디렉토리가 있습니다.
C:\Program Files\Java\jdk1.7.0_03 --> For JDK
C:\Program Files\Java\jre7 --> For JRE
처음에 설정했습니다.C:\Program Files\Java\jre7
Eclipse에 JRE를 설치하고 Maven(Ant는 정상적으로 동작하고 있었다)의 경우에도 같은 에러가 발생하고 있었습니다.
를 "JRE"로 C:\Program Files\Java\jdk1.7.0_03\jre7
JRE를 사용하다
특정 Eclipse 구성에서 프로젝트를 실행하는 경우 올바른 JDK를 Eclipse 설정에 추가한 후 "Run Configurations(실행 구성)"에서 Java Runtime(Java 런타임)을 변경해야 합니다.
Maven이 JDK가 아니라 JRE를 사용하는 것 같네요.JDK를 설치하기 전에 Maven을 설치했을 수도 있습니다.
설정 파일을 확인합니다.시스템, 사용자 및 프로젝트의 총 3가지입니다.설치 구성($M2_HOME/conf/settings.xml) 또는 사용자별 구성(${user.dir}/.m2/settings.xml)에 있을 수 있습니다.
Eclipse 설정만
다음의 순서를 실행합니다.
Eclipse 프로젝트 속성 오른쪽 클릭
Java 빌드 경로 → 라이브러리
JRE 시스템 라이브러리 선택 → 버튼을 클릭합니다.
"설치된 JRE..." 버튼을 클릭합니다.
JRE를 다음으로 편집: JRE Home 설정 = JAVA_홈 또는 자바_홈\jre
스크린샷:
Project → Properties → Java Build Path 메뉴를 마우스 오른쪽 버튼으로 클릭합니다.
JRE 시스템 경로 → 편집을 선택합니다.[ Workspace Default JRE ]를 선택하여 [JDK]> [ 1.4]를 포인트 합니다.
메뉴 창 → 기본 설정 → Java → 설치된 JRE → 실행 환경 > 오른쪽 체크박스를 클릭합니다.
해결책은 간단합니다.Eclipse Windows → 기본 설정 → Java → 설치된 JRE가 다음을 가리키는 경우가 있습니다.C:\Program files\Java\jre
.
했을 때C:\Program files\Java\JDK 6.0\jre
100%
여러 다른 사용자가 언급한 것처럼 Eclipse Window → Preferences...→ Java → 설치된 JRE는 JRE가 아니라 사용자가 설치한 JDK를 가리켜야 합니다.그 다음에야, 이 시스템은../lib
폴더는 에러 메시지에 기재되어 있습니다.
이 경우에도 문제가 재발할 수 있습니다.Eclipse v4.2(Juno)에서 벗어나는 방법은 Maven → Update 프로젝트를 수행하는 것입니다.그 후에는 문제가 사라집니다.
이클립스가 생성한 파일(.classpath, .project, .preferences) 중 일부가 이러한 문제가 발생한 프로젝트의 Subversion에 있는 것이 원인이라고 생각합니다.따라서 SVN 업데이트를 통해 문제가 발생하며 Eclipse의 Maven에서 구성 업데이트를 통해 문제가 다시 해결됩니다.
실제 솔루션: Eclipse에서 생성된 .files를 버전 제어에서 생략하고 Maven Eclipse 플러그인에서 프로젝트 구성을 처리합니다.(추가 포인터/제안도 환영합니다.
이클립스 메뉴에서 → 디버깅 구성을 실행합니다.
JRE 탭에서 JRE가 아닌 JDK를 선택하면 문제가 해결되었습니다.
Amazon Linux에서도 같은 문제가 있었습니다.JDK 개발자 버전을 설치해야 했습니다.
sudo yum -y install java-1.7.0-openjdk-devel
Eclipse의 메뉴 창 → 기본 설정...→ Java → 설치된 JRE는 JRE가 아니라 사용자가 설치한 JDK를 가리켜야 합니다.
또한 Eclipse가 업데이트된 모든 변경 사항을 가지고 있는지 확인할 수 있습니다.이렇게 하려면 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 "새로 고침" 메뉴 항목을 누르십시오.
다른 많은 답변에서는 Eclipse를 JRE가 아닌 JDK로 가리켜야 한다고 합니다.
그 방법에 대해 [여기서 본 답변보다] 보다 구체적이고 명확한 답변입니다. JDK 설치 방법
그것이 이 같은 문제로 나를 해결한 것이다.
일식에서 "VM"을 확인하십시오.ini는 2개의 정자선 상에 있습니다.즉,
-vm
C:\Program Files\Java\jdk1.6.0_06
컴파일러의 위치는 JAVA_가 아닌 표시된 JRE 위치에 컴파일러 플러그인이 있도록 POM에 정의되어 있을 것입니다.HOME이 가리키고 있다.
돼요.JAVA_HOME
mvn.ini
(Maven 폴더에 있습니다)./bin
문제가 사라집니다.
JAVA_ 를 설정하는 경우HOME에서도 문제가 해결되지 않습니다.다음 절차를 따릅니다.
(새로 설치한 PC에서도 같은 문제가 발생했습니다.)
이클립스를 사용한다고 가정합니다.
- Window → Preferences → Java → Installed jre's를 엽니다.가지고 있는 것을 모두 제거하고, 사용하고 싶은 것을 추가합니다(JDK, JRE 없음).
- 같은 창 open maven - installations에서 다운로드하여 추출한 Maven installation을 추가합니다(내장 Maven installation은 사용하지 마십시오).이미 알려진 버그가 있습니다.)
그게 다예요.당신의 프로젝트는 그런 문제를 겪지 않을 것입니다.
JUnit 버전 때문에 같은 오류가 발생했습니다.3.8.1이 3개 있었는데 4.8.1로 바뀌었어요.
해결책은 다음과 같습니다.
당신은 POM에 가서 당신의 의존관계가 이렇게 생겼는지 확인해야 합니다.
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.8.1</version>
<scope>test</scope>
</dependency>
하여 maven-compiler-plugin을 했습니다.executable
★★★★★★★★★★★★★★★★★」fork
가치가 진실인 채로.
<configuration>
<fork>true</fork>
<source>1.6</source>
<target>1.6</target>
<executable>C:\Program Files\Java\jdk1.6.0_18\bin\javac</executable>
</configuration>
그것은 나에게 효과가 있었다.
Echo %JAVA_HOME%
다음에 또 한 번.mvn --version
.
JRE 경로는 같아야 합니다...그런 다음 메뉴 창 → 기본 설정 → Java → 설치된 JRE의 위치는 다음과 같아야 합니다.Java_Home
이고있있 있있있다다
속성 대화상자로 이동하여 프로젝트를 마우스 오른쪽 버튼으로 클릭합니다.
연결된 리소스에 JAVA_라는 새 경로를 추가합니다."C:\Program Files\Java\jdk1.8.0_73"과 같이 JDK 위치에 저장합니다.
이상입니다!!
이 문제에 대한 해결책은 매우 간단합니다.
Ant 빌드 파일이 없는 경우 생성합니다.Eclipse에서 개미 파일을 쉽게 만들 수 있습니다.
Ant 빌드 파일 [http://www.codejava.net/ides/eclipse/how-to-create-ant-build-file-for-existing-java-project-in-eclipse]을 작성하려면 링크를 참조하십시오.
이제 지정된 단계를 수행하십시오.
1) 뷰 창의 개미 뷰에서 개미 빌드 파일을 추가합니다.
2) Ant 빌드 파일을 마우스 오른쪽 버튼으로 클릭하고 Run As(다른 이름으로 실행)와 해당 Ant Build(개미 빌드)의 두 번째 옵션을 선택합니다.
3) 다양한 옵션과 탭이 있는 대화상자가 열립니다.
4) [JRE] 탭을 선택합니다.
5) 3개의 옵션버튼이 표시되어 옵션으로 [JRE]또는 [JDK]가 선택됩니다.
6) 라디오 버튼의 옵션에 [JRE]가 선택되어 있는지 확인하고 [JDK]로 변경합니다.
7) [적용]을 클릭합니다.
바로 그거야...!!!
언급URL : https://stackoverflow.com/questions/2222560/maven-build-failed-unable-to-locate-the-javac-compiler-in-jre-or-jdk-issue
'programing' 카테고리의 다른 글
Python에서 모듈 전체 변수를 만드는 방법은 무엇입니까? (0) | 2023.01.22 |
---|---|
드롭다운에 React JS를 사용한 OnChange 이벤트 (0) | 2023.01.22 |
괄호 사이의 텍스트 제거 PHP (0) | 2023.01.22 |
스프링 부트 JPA 휴지 상태 - 밀리초의 정밀도로 저장 날짜 (0) | 2023.01.22 |
dict 목록에서 값 목록 가져오기 (0) | 2023.01.22 |