[java] 이 환경에서는 컴파일러가 제공되지 않습니다. 아마도 JDK가 아닌 JRE에서 실행 중입니까?

m2eclipse를 사용하여 Eclipse에서 프로젝트를 컴파일하고 있습니다. Eclipse에서 JDK 경로를 다음과 같이 설정했습니다.

Windows-->preferences-->installed jres--> jdk1.7.xx  path

그러나 이것은 오류를 보이고 있습니다

[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
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.424s
[INFO] Finished at: Tue Oct 29 15:21:01 IST 2013
[INFO] Final Memory: 5M/15M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-   plugin:3.1:compile (default-compile) on project TEST-WEB: Compilation failure
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?



답변

  1. Eclipse IDE에서 > 환경 설정 > Java > 설치된 JRE 로 이동 하여 설치된 JRE를 확인하십시오 . 거기에 JDK가있는 항목이 있어야합니다.
  2. 아래와 같이 Execution Env를 선택하십시오. 확인을 클릭하십시오
  3. 그런 다음 프로젝트를 마우스 오른쪽 버튼으로 클릭 -> Maven- > 프로젝트 업데이트

또한 Maven JRE (@ jlars62 답변 참조)를 다음과 같이 변경해야 할 수도 있습니다. 왼쪽 패널에서 실행중인 Maven Build를 선택하여 Run-> Run Configurations로 이동하십시오. 그런 다음 JRE 탭을 클릭하고 Workspace default JRE 옵션을 선택했습니다.

여기에 이미지 설명을 입력하십시오


답변

나를 위해, 그것은 일식의 maven이 정확히 불평하는 것입니다.

여기에 이미지 설명을 입력하십시오

그래서 Edit버튼을 누르고 JDK 폴더의 경로를 변경 한 다음 프로젝트를 정리하면 모든 것이 작동하기 시작합니다.


답변

  1. JAVA_HOME명령 행 또는 maven ( mvn) 을 실행하는 경우 환경 변수를 JDK 루트 폴더로 설정하십시오 .
    • ( JAVA_HOME자세한 정보는 Google 검색 )
  2. Java 컴파일러 섹션의 프로젝트 특성에서 필수 JDK를 선택하십시오 (이클립스에서 직접 실행하는 경우)

답변

나를 위해 pom.xml을 변경하기 전까지는 아무것도 작동하지 않았습니다.

<build>
...
    <plugins>
    ...
        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.1</version>
            <configuration>
                <fork>true</fork>
                <executable>C:\Program Files\Java\jdk1.7.0_45\bin\javac.exe</executable>
            </configuration>
        </plugin>
    </plugins>
</build>

기타 사항

m2e가 JDK가 아닌 JRE에서 실행되고 있음을 알 수있었습니다. 이것을 eclipse.ini에 추가하는 것을 포함하여 아무것도 변경하지 않았습니다.

-vm
C:\Program Files\Java\jdk1.7.0_45\bin\javaw.exe

결국 나는 JDK에서 실행할 m2e를 얻지 못했지만 Java 컴파일러를 명시 적으로 (위와 같이) 설정하면 속임수가되었습니다.


답변

내 경우에는 이것을 수행하여 해결되었습니다.

‘런타임 구성’으로 이동하여 JRE를 JDK로 구성하십시오.

런타임에 적합한 JDK를 선택하십시오

기본 JRE 선택

어떤 이유로 든 삭제 된 경우에 대비하여 답변을 복사했지만 소스는 여기에 있습니다.


답변

이클립스에서 maven 빌드를 시도 할 때이 오류가 발생했습니다.

나에게 대답은 Run-> 으로 가고 , 왼쪽 패널에서 내가 실행 중임을 Run Configurations선택했습니다 Maven Build. 그런 다음 JRE탭을 클릭 하고 옵션을 선택했습니다.Workspace default JRE


답변

창-> 환경 설정-> Java-> 설치된 JRE로 이동하십시오.

jre가 이미 추가되었을 수 있습니다.
여기에 이미지 설명을 입력하십시오

추가-> 표준 VM-> 다음-> 디렉토리를 클릭하십시오.

내 사건 경로에서 JDK를 찾아보십시오. C:\Program Files\Java\jdk1.8.0_111

그런 다음 완료를 클릭하십시오.

이 같은 창을 볼 수 있습니다여기에 이미지 설명을 입력하십시오

JDK-> 적용-> 확인을 선택하십시오.

그리고 당신은 끝났습니다.