programing

Eclipse/Maven 오류: "이 환경에는 컴파일러가 제공되지 않습니다."

batch 2023. 5. 6. 14:12
반응형

Eclipse/Maven 오류: "이 환경에는 컴파일러가 제공되지 않습니다."

내 환경은 Eclipse [Kepler SR1] 및 Maven이 설치된 Windows 7 64비트입니다.메이븐을 운영해야 합니다.install코드 변경 내용을 배포하지만 콘솔에 다음 오류가 표시됩니다.

[ERROR] 프로젝트 .apache.maven 파일 이름.):파일:maven-maven-discu-discuit:3.1:project mrapp 파일:입니다.
[ERROR] 이 환경에는 컴파일러가 제공되지 않습니다.아마도 당신은 JDK가 아닌 JRE에서 실행하고 있습니까?

는 확실히 JRE가 아닌 JDK를 운영하고 있습니다.두 번 확인했습니다.$JAVA_HOME(C:\Program Files (x86)\Java\jdk1.7.0_60) 그리고 그것은 그것을 가지고 있습니다.javac.exe 그안에.bin디렉토리입니다.

창 → 기본 설정 → Java → 설치된 JRE로 이동합니다.

그리고 JDK 경로를 가리키는 항목이 있는지 확인하고, 없으면 편집 버튼을 클릭하고 구성한 경로를 놓습니다.JAVA_HOME환경.

스크린샷 설치된 JRE에 'tools.jar'를 추가합니다.

  1. Eclipse->window->preference.
  2. 를 선택합니다.installed JREs->Edit
  3. 외부 병 추가
  4. 선택합니다.tools.jarjava/JDKx.x/lib폴더를 누릅니다.
  5. 마침을 클릭]

Window > Preferences > Java > Installed JREs >로 이동하여 설치된 JRE를 확인합니다.당신은 거기에 JDK가 있는 항목이 있어야 합니다.

https://cduu.wordpress.com/2013/03/08/maven-eclipse-compiler-error-no-compiler-is-provided-in-this-environment/

저는 모든 것을 시도했습니다. 저에게 효과가 있었던 것은 다음과 같습니다.

  1. Eclipse 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 속성으로 이동합니다.
  2. Java 빌드 경로를 클릭하고 라이브러리 탭으로 이동합니다.
  3. JRE 또는 JDK 중 어떤 버전의 Java가 추가되었는지 확인합니다.
  4. 만약 당신이 메이븐 프로젝트를 사용하고 있고 솔루션을 구축하고 있습니다.
  5. 추가된 JRE를 선택하고 제거를 클릭합니다.
  6. 외부 클래스 폴더 추가를 클릭하고 시스템에서 선택하여 JDK 설치를 추가합니다.
  7. 적용 및 확인을 클릭합니다.
  8. Eclipse를 다시 시작합니다.
  9. 빌드에 성공했습니다.

pom.xml에 이 구성 추가

<project ...>
    ...
    <build>
        ...
        <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <source>1.7</source>
                    <target>1.7</target>
                    <fork>true</fork>
                    <executable>C:\Program Files\Java\jdk1.7.0_79\bin\javac</executable>
                </configuration>
            </plugin>
        </plugins>
    </build>
    ...
</project>

이것은 저에게 효과가 있었습니다. 1. Window -> Preferences -> Installed JRE. 2. 아래 이미지와 같이 참조가 JDK용인지 확인하십시오.여기에 이미지 설명 입력

그렇지 않으면 Add -> Standard VM -> 디렉터리를 선택하여 JDK 경로 지정을 클릭하고 이미지와 같이 finish를 클릭합니다.

  1. 마지막 단계에서 설치된 JRE -> 실행 환경 -> 아래 이미지와 같이 JDE를 선택합니다.

  2. 메이븐 -> 클린

내가 달리고 있을 때mvn compile콘솔에서 아래 오류가 발생했습니다.

[INFO] Changes detected - recompiling the module!
[WARNING] File encoding has not been set, using platform encoding Cp1252, i.e. build is platform dependent!
[INFO] Compiling 1087 source files to C:\Code\DevVNextComplete\Development_vNext\Source\JARS\target\classes
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
[INFO] 1 error

[해상도]

JAVA_를 추가했습니다.내 환경 변수의 HOME 변수가 작동했습니다.

여기에 이미지 설명 입력

Jdk1.8_92로 작업할 때도 비슷한 오류가 발생했습니다.저는 jdk 폴더에 tools.jar가 없는 것을 발견했습니다.콘솔에서 실행하고 있었기 때문에 다른 사람들이 제안하는 이클립스 옵션을 사용할 수 없었습니다.

jdk-8u92-windows-x64를 설치했습니다.모든 옵션을 사용해 본 결과 jdk1.8.0_92/lib 폴더에 tools.jar가 없습니다.이전 버전의 Java에서 tools.jar를 복사했습니다.그리고 나서 그것은 컴파일 할 수 있었습니다.

JDK 8 및 JRE 8이 설치된 Windows 10에서 새로 설치된 Eclipse Neon(JEE 개발용) 설치에서 Eclipse 내에서 메이븐 빌드를 실행하려고 할 때 동일한 오류가 발생했습니다.

tools.jar를 외부 lib로 지정하고 jdk를 -vmin eclipse로 설정하려고 했습니다.이 두 가지 모두 효과가 없었습니다.

위에서 언급한 대로 JDK를 기본 실행 환경으로 선택하면 성공했습니다.

  1. Eclipse->창->기본 설정->java->설치된 JRE->실행 환경.
  2. Java SE-1.8 선택
  3. 호환 JRE에서 JDK 1.8을 확인합니다.

3단계에서 호환되는 JRE 목록 상자 위의 텍스트는 "기본 JRE를 확인하여 지정할 수 있습니다"라고 말합니다.

참고: 저는 또한 폼에 1.8을 명시적으로 나열한 메이븐 컴파일러 플러그인을 가지고 있습니다.

    <plugin>  
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.1</version>
        <configuration>
            <source>1.8</source>
            <target>1.8</target>
        </configuration>
    </plugin>

다음을 수행합니다: Windows --> 환경설정 --> Java ---> 설치JRE

샘플 이미지

"Search..."를 클릭합니다."

C 드라이브 ---> 프로그램 파일로 이동합니다.

샘플 이미지 2

Eclipse는 모든 jre 및 jdk를 찾습니다 --> jdk 중 하나를 선택하고 Apply를 선택합니다.

설치된 jre로 전환해도 유사한 오류가 해결되지 않았기 때문에 pom.xml 요소, 특히 jdk.version에 다음 항목이 있는지 확인하십시오.

<properties>
    <jdk.version>1.7</jdk.version>
    <spring.version>4.1.1.RELEASE</spring.version>
    <jstl.version>1.2</jstl.version>
    <junit.version>4.11</junit.version>
</properties>

만약 누군가가 Ubuntu에서 Eclipse를 실행하고 있고 이 문제가 있다면 저는 다음 단계를 따라 답을 찾았습니다.

  1. 이클립스->창->기본 설정.
  2. 설치된 JRE 선택->추가
  3. 표준 VM을 선택합니다.
  4. JRE home: [디렉토리..버튼을 누릅니다.
  5. Java를 선택합니다(이클립스가 java8로 실행되고 VM이 java7로 실행되는 것이 문제였습니다). 이 경우 java8이 usr/local/jvm/java-8-oracle에 설치되었습니다.
  6. 완료를 누릅니다.
  7. 그런 다음 설치된 JRES 화살표를 눌러 다른 옵션을 볼 수 있습니다.
  8. 실행 환경으로 이동합니다.
  9. 왼쪽과 오른쪽(호환 가능한 JRE)에서 Java SE-1.6을 선택합니다. 방금 설치한 Java(나의 경우 java-8-oracle)를 선택해야 합니다.Java SE 1.8에서 이 단계를 수행해야 합니다.
  10. 확인을 클릭하고 Eclipse를 다시 시작합니다.

JRE를 설치했습니다. 제 경우 중복된 이름을 제거하여 문제를 해결했습니다. 이름은 jdk.1.8.0_101입니다.

저의 경우, 실행 구성을 생성했으며 실행을 시도할 때마다 오류가 표시됩니다.일부 웹 사이트에서 검색한 후 실행 구성을 편집하고 JRE 탭에서 런타임 JRE를 로컬 Java JDK 설치를 가리키도록 이미 구성한 'workspace default JRE'로 선택했습니다(예:C:\Program Files(x86)\Java\jdk1.8.0_51).이것으로 저의 문제가 해결되었습니다.누군가를 도울 수도 있어요

windows > 환경설정 > java > installed JREs > 기존 JRE를 제거하고 Java bin 폴더(주로 C:\Program Files\Java\jdk1.8.x_xxx 아래)를 가리킴으로써 eclipse에서 Java to bin 폴더를 가리킵니다.

그런 다음 메이븐 설치를 실행하면 작동합니다.

Maven에서 사용하는 기능을 확인하려면 명령줄을 열고 다음을 입력합니다.

mvn –version

JAVA_를 확인HOME은 JRE가 아닌 JDK 홈을 참조합니다.

Windows의 경우:

시스템 속성 -> 고급 시스템 설정 -> 고급 -> 환경 변수로 이동한 후 시스템 변수 섹션에서 JAVA_를 선택합니다.HOME 변수를 클릭하고 편집을 클릭합니다. 변수 이름으로 양식 채우기: JAVA_HOME 변수 값:

Unix의 경우:

export JAVA_HOME=<ABSOLUTE_PATH_TO_JDK>

링크 보기

  1. 시스템에서 이전 Java(JDK/JRE) 제거(최신 Java 버전 하나 유지), 환경 변수 PATH/CLASSPATH에 이전 Java jre/jdk 항목이 있는 경우에도 제거
  2. Eclipse -> 창 -> 환경설정 -> 설치된 JRE -> 최신 설치에서 JDK 추가/편집
  3. Eclipse->창->환경설정->설치된 JRE->실행환경->왼쪽에서 원하는 Java 버전을 선택하고 오른쪽의 확인란을 클릭합니다.
  4. maven을 사용하는 경우 pom.xml(필요에 따라 업데이트 버전)의 플러그인 태그에 다음 태그를 포함합니다.

    <plugin>  
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.1</version>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
    
  5. 이클립스 프로젝트 메이븐 오른쪽 클릭 - > 프로젝트 업데이트

10을 실행했을 때 에서 " compiler this environment" 했습니다.mvn install수정 사항은 JAVA_를 변경하는 중이었습니다.myjdk(C:\Program Files\Java\jdk1.8.0_101)를 가리키는 HOME 환경 변수입니다. 이전에는 jre를 가리켰습니다.

그리고 이클립스가 새로운 jdk를 사용하도록 하기 위해, 저는 편집했습니다.eclipse.ini의 이클립스 에서, 했습니다.-vmC:\Program Files\Java\jdk1.8.0_101\bin.

Eclipse ->Window ->기본 설정 ->설치된 JRE에서 pom.xml 및 jre 버전의 java 버전을 확인합니다.저의 경우 pom.xml의 버전이 다릅니다(1.7을 사용하여 일식을 하는 동안 1.8).pom.xml의 버전을 1.7로 수정하는 것이 효과가 있었습니다.

의 작업을 하는 에는 다음과 같이 하십시오.
합니다.HOME 명령 창에 다음 명령을 입력하여 해당 디렉터리에 컴파일러가 포함되어 있습니다.

dir %JAVA_HOME%\bin\javac.*

1.Windows로 이동-->환경설정-->Java-->설치된 JRE-->실행 환경

2. "실행 환경" 상자에서 현재 사용 중인 Java 버전을 선택합니다.따라서 "Compatible JREs" 상자에서 "jre1.8.0_102[perfect match]"(Java 버전이 1.8인 경우)로 볼 수 있습니다.그런 다음 메이븐을 사용하여 구축해 보십시오.

Maven을 컴파일하려면 JDK가 필요합니다.Eclipse에서 JRE를 JAVA_가 사용하는 JDK 경로로 변경/교체해야 합니다.HOME이 가리킵니다.Window > Preferences > Java > Installed JRE로 이동합니다.

pom.xml의 maven-compiler-plugin에 Java 버전의 소스와 대상이 JAVA_에 있는지 확인합니다.집입니다

http://learn-automation.com/maven-no-compiler-is-provided-in-this-environment-selenium/

확인하십시오.%JAVA_HOME%이핑으설 정로타를 입력하여 합니다.echo %JAVA_HOME%명령 프롬프트에 표시됩니다.이 설정이 없으면 Java 경로를 Windows의 환경 변수에 추가해야 합니다.

JAVA_를 제공하여 이 문제를 해결했습니다.내 환경 변수의 HOME 및 intellij 재시작

당신은 아래에 주어진 것 중 하나를 따를 수 있습니다.

  1. 프로젝트--properties--java 빌드 경로--jre 시스템 라이브러리--edit--라이브러리 경로를 JDK로 추가
  2. 창 환경설정--java--설치된 JRE--JRE 시스템 라이브러리--라이브러리 추가 및 JDK 폴더 경로 제공
  3. 기본 컴파일러의 경우 jre 대신 jre를 가리키도록 구성된 경우 어떤 방식으로든 JDK를 빌드/컴파일 소스로 사용하도록 이클립스를 지시해야 합니다.

위에서 설명한 내용 중 아무 것도 도움이 되지 않는 경우 동일한 문제에 직면하고 있다는 것은 사용자 지정 실행/디버그 구성에서 잘못된 구성이 있을 수 있다는 것을 의미합니다.

이 경우 사용자 정의 메이븐 실행 구성을 사용합니다.여기 JRE가 앞서 지적되었습니다.일단 JRK로 바꾸자 예상대로 작동했습니다.
여기에 이미지 설명 입력

Preferences->Java->Installed JREs에서 올바른 위치를 추가했는데도 작업 공간 기본값이 실제로 변경되지 않는 Eclipse Neon에 문제가 있었습니다.이것은 코드 분기에서 작업하기 위해 만든 새 작업 공간에 있습니다. 원래는 JDK가 아닌 JRE 위치로 설정되었습니다.기본 설정을 변경한 후에도 명령줄로 빌드할 수 있었지만 Eclipse에서 빌드하면 컴파일러 오류가 발생하지 않았습니다.참고하시기 바랍니다

메이븐 패키지 컴파일 오류

Eclipse가 올바른 작업 공간 기본값을 인식하도록 하려면 Eclipse 구성 파일을 수동으로 편집해야 한다는 답변을 받았습니다.환경설정이 새 작업영역의 구성으로 전달되지 않은 이유를 아직도 모르겠습니다.

언급URL : https://stackoverflow.com/questions/21099072/eclipse-maven-error-no-compiler-is-provided-in-this-environment

반응형