티스토리 뷰

Maven Multi-Module Project 에서 Java Compiler 설정하는 방법

Maven으로 Multi-Module Project를 구성하다 보면 Maven Update 할 때 프로젝트별 Java Compiler 버전이 꼬이는 경우가 발생한다. 일반적으로는 동일한 JDK 버전을 이용하지만 상황에 따라서는 각 Module Project 별로 JDK의 특정 기능을 사용해야 할 경우가 있기 때문이다.

이런 문제를 해결하기 위해서는 Root Project에 Java Compiler를 지정하고 각 Module Project 별로 필요한 Java Compiler 버전을 정의해 주면 된다.

Pom 파일에 Properties를 사용하는 방법

<project>
	...
	<properties>
		...
		<maven.compiler.source>1.7</maven.compiler.source>
		<maven.compiler.target>1.7</maven.compiler.target>
		...
	</properties>
	...
</project>

위의 코드에서 source, target를 나누어 지정하는 이유는 다음과 같다.

  • Source - 코드 작성 시에 특정 JDK 버전의 언어적인 특성을 이용할 경우에 적용
  • Target - 컴파일된 Classes 의 JVM 버전 호환성을 위해 적용

Pom 파일에 Plugin을 사용하는 방법

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


Written by MSFL. (Morris)

댓글
댓글쓰기 폼