[java] 아이디어 : javac : 소스 릴리스 1.7에는 대상 릴리스 1.7이 필요합니다

IntelliJ IDEA를 사용하여 JUnit 테스트를 실행할 때

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

이 문제를 어떻게 해결할 수 있습니까?

  • SDK 1.7 사용
  • 모듈 언어 수준은 1.7입니다

메이븐 빌드는 잘 작동합니다. (이것이 IDEA 구성 문제에서 이것을 믿는 이유입니다)



답변

Maven에서 가져온 잘못된 컴파일러 옵션이 여기에 있습니다.

컴파일러 옵션

또한 스크린 샷에 요약 된 프로젝트 및 모듈 바이트 코드 ( target ) 버전 설정을 확인하십시오.

소스 언어 레벨이 구성된 다른 장소 :

  • 프로젝트 구조 | 계획

계획

  • 프로젝트 구조 | 모듈 (모든 모듈 확인) | 출처

출처

Maven 기본 언어 수준1.5 (5.0)입니다. 위 스크린 샷에서이 버전을 모듈 언어 수준으로 볼 수 있습니다.

내부의 maven-compiler-plugin 구성을 사용하여 변경할 수 있습니다 pom.xml.

<project>
  [...]
  <build>
    [...]
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
        </configuration>
      </plugin>
    </plugins>
    [...]
  </build>
  [...]
</project>

또는

<project>
  [...]
  <properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
  </properties>
  [...]
</project>

IntelliJ IDEA는 Maven 프로젝트 도구 창 에서 Maven 프로젝트 를 다시 가져온 후이 설정을 준수 합니다 .

다시 가져 오기


답변

IntelliJ 15, 2016 및 2017

아래에서 IntelliJ 13 & 14에 대해 설명한 것과 비슷하지만 설정 / 기본 설정 패널에 추가 수준이 있습니다 : 설정 > 빌드, 실행, 배포 > 컴파일러 > Java 컴파일러 .

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

IntelliJ 13 및 14

IntelliJ 13 및 14에서 설정> 컴파일러> Java 컴파일러 UI를 확인하여 모듈의 다른 바이트 코드 버전을 대상으로하지 않는지 확인하십시오.

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


답변

에서 하게 IntelliJ IDEA 14.1 은 “대상 바이트 코드 버전”다른 위치에있다.

다음 변경 사항이 저에게 효과적이었습니다.

파일> 설정 …> 빌드, 실행, 배포> 컴파일러> Java 컴파일러 : 대상 바이트 코드 버전 을 1.5에서 1.8로 변경

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

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


답변

maven 3 및 JDK 7을 사용하는 경우 빌드 구성을 살펴 보았습니까?

<build>
    <finalName>SpringApp</finalName>
    <plugins>
        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.7</source>
                <target>1.7</target>
            </configuration>
        </plugin>
        ...
    </plugins>
    ...
</build>


답변

이 문제가 발생하여 수정은 프로젝트 설정> 모듈로 이동하여 특정 모듈> 종속성 탭을 클릭하는 것이 었습니다. 모듈 SDK가 여전히 1.6으로 설정되어 있고 1.7로 변경하여 작동했습니다.


답변

필자의 경우 설정> 컴파일러> Java 컴파일러 에서 필수 옵션 ( ‘대상 바이트 코드 버전’)을 찾았습니다 (intelij idea 12.1.3)


답변

다음 경로에서 프로젝트의 컴파일러 설정 파일을 수정하고 ‘target’을 1.7로 변경하십시오.

/project/.idea/compiler.xml

<bytecodeTargetLevel>
  <module name="project-name" target="1.7" />
</bytecodeTargetLevel>