Maven의 주요 인코딩 옵션

  • Post Author:
  • Post Category:칼럼
  • Post Comments:0 Comments
  • Post last modified:October 11, 2013

Maven 프로젝트를 처음 생성하면 pom.xml 파일에 별다른 설정이 없다. 심지어 컴파일러 옵션조차 보이지 않는다. 물론 시스템이 기본 옵션으로 실행한다. 하지만 프로젝트를 생성하자마자 컴파일러와 리소스 플러그인의 인코딩 옵션을 명시적으로 지정해 놓는 편이 좋다. 안 그러면 나중에 Malformed Encoding ~ 어쩌구하는 예외 메시지를 보게 될 것이다.

    <build>
        <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>2.0.2</version>
                <configuration>
                    <source>1.6</source>
                    <target>1.6</target>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-resources-plugin</artifactId>
                <version>2.2</version>
                <configuration>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
        </plugins>
    </build>

이렇게 바꾸고 나서 mvn compile이나 mvn test를 실행하면 다음과 같이 UTF-8 인코딩 사용 여부가 터미널에 출력된다.

jaden:ProjectName jaden$ mvn test
[INFO] Scanning for projects...
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building ProjectName 1.0.0-BUILD-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ slide ---
[INFO] Using &#x27;UTF-8&#x27; encoding to copy filtered resources.
[INFO] Copying 5 resources
[INFO] 
[INFO] --- maven-compiler-plugin:2.3.2:compile (default-compile) @ slide ---
[INFO] Compiling 1 source file to /Users/jaden/Documents/Workspace/ProjectName/ProjectName/target/classes
[INFO] 
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ slide ---
[INFO] Using &#x27;UTF-8&#x27; encoding to copy filtered resources.
[INFO] Copying 16 resources
[INFO] Copying 5 resources
[INFO] Copying 2 resources
[INFO] Copying 0 resource
[INFO] Copying 42 resources

참고 문헌: Change character encoding scheme for Maven resource and compile plugin in NetBeans

Kubernetes, DevSecOps, AWS, 클라우드 보안, 클라우드 비용관리, SaaS 의 활용과 내재화 등 소프트웨어 개발 전반에 도움이 필요하다면 도움을 요청하세요. 지인이라면 가볍게 도와드리겠습니다. 전문적인 도움이 필요하다면 저의 현업에 방해가 되지 않는 선에서 협의가능합니다.
follow me
  • RT @not_unot_u: 네 번째 올리신 청원글이에요. 너무 고생하고 계시는데 동의 한 번 씩 부탁드립니다. 거의 다 왔습니다! 7월 11일 마감인데 이제 2만명만 채우면 청와대 답변 받을 수 있어요. https://t.co/3mVDM3jsrP
    17 hours ago
  • 그런데 전화를 받은 윤석열 검찰총장이 박 장관에게 ‘(조국 후보자가) 이제 그만 물러나라는 뜻으로 제가 (압수수색을) 지시했습니다’ 이렇게 말했다는 거지. 윤석열을 대통령으로 뽑은 기억은 없는데 희안하구만 https://t.co/yEEQXfey4g
    22 hours ago
  • 훌륭한 시스템을 체험하지 못한 사람이 시스템의 부재로 야기되는 문제를 인식할 수 있을까? “난 잘하고 있는데 왜 너는 자꾸 불평하느냐?”라고 생각하지 않을까?
    2 days ago
Buy me a coffeeBuy me a coffee
×
Kubernetes, DevSecOps, AWS, 클라우드 보안, 클라우드 비용관리, SaaS 의 활용과 내재화 등 소프트웨어 개발 전반에 도움이 필요하다면 도움을 요청하세요. 지인이라면 가볍게 도와드리겠습니다. 전문적인 도움이 필요하다면 저의 현업에 방해가 되지 않는 선에서 협의가능합니다.
Latest Posts