나는 maven과 MacOS를 처음 사용합니다.
터미널에 maven을 설정했으며 (을 사용하여 mvn -v
) 버전 설정을 가져올 때 JDK 1.6을 사용하는 반면 JDK 1.7을 설치 한 것 같습니다. 문제가 있습니까?
내가 입력 한 명령은 다음과 같습니다.
blues:helloworld Ninja$ java -version
java version "1.7.0_05" Java(TM) SE Runtime Environment (build 1.7.0_05-b06) Java HotSpot(TM) 64-Bit Server VM (build 23.1-b03, mixed mode)`
blues:helloworld Ninja$ mvn -v
Apache Maven 3.1.0 (893ca28a1da9d5f51ac03827af98bb730128f9f2; 2013-06-28 10:15:32+0800) Maven home: /usr/local/Cellar/maven/3.1.0/libexec Java version: 1.6.0_51, vendor: Apple Inc. Java home: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home Default locale: zh_CN, platform encoding: EUC_CN OS name: "mac os x", version: "10.8.4", arch: "x86_64", family: "mac"
답변
에 다음을 추가하십시오 ~/.mavenrc
.
export JAVA_HOME=/Library/Java/JavaVirtualMachines/{jdk-version}/Contents/Home
두 번째 해결책 :
echo export "JAVA_HOME=\$(/usr/libexec/java_home)" >> ~/.bash_profile
답변
들어가다
/System/Library/Frameworks/JavaVM.framework/Versions
CurrentJDK
심볼릭 링크를 업데이트하여
/Library/Java/JavaVirtualMachines/YOUR_JDK_VERSION/Contents/
예 :
cd /System/Library/Frameworks/JavaVM.framework/Versions
sudo rm CurrentJDK
sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/ CurrentJDK
이제 즉시 작동합니다.
답변
당신은 또한 할 수 있습니다
<properties>
...
<!-- maven-compiler-plugin , aka JAVA Compiler 1.7 -->
<maven.compiler.target>1.7</maven.compiler.target>
<maven.compiler.source>1.7</maven.compiler.source>
...
</properties>
답변
어떤 자바 버전을 컴파일할지 maven에게 명시 적으로 알려줄 수도 있습니다. 당신은 maven-compiler-plugin
당신의 치어에 추가를 시도 할 수 있습니다 .
<project>
[...]
<build>
[...]
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
[...]
</build>
[...]
</project>
maven 프로젝트를 IDE로 가져온 경우 IDE에서 maven 러너가 사용하는 기본 컴파일러에 대한 maven 설정이있을 수 있습니다.
답변
그것은 나를 도왔다. pom.xml에 추가하십시오.
기본적으로 maven 컴파일러 플러그인은 Java 1.5 또는 1.6을 사용하므로 pom.xml에서 재정의해야합니다.
<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>
답변
Eclipse 사용자의 경우. 예를 들어 패키지를 정리하는 실행 구성이있는 경우
실행 구성 패널에는 실행할 런타임에 대해 지정할 수있는 JRE 탭이 있습니다. 이 구성은 pom.xml에있는 모든 것을 대체합니다.
답변
이 질문에 늦었지만 MacOS에서 JDK 버전을 처리하는 가장 좋은 방법은 http://www.jayway.com/2014/01/15/how-to-switch-jdk에 설명 된 스크립트를 사용하는 것입니다 . -version-on-mac-os-x-maverick /