Maven 빌드 플랫폼을 독립적으로 만드는 방법은 무엇입니까?


93

에, 내 Mac에서 메이븐을 사용하여 구축 할 때 mvn install내가 얻을

[경고] 플랫폼 인코딩 (실제로는 MacRoman)을 사용하여 필터링 된 리소스를 복사합니다. 즉, 빌드는 플랫폼에 따라 다릅니다!

특정 플랫폼 (Linux) 용으로 빌드하거나 빌드 플랫폼을 독립적으로 만들 수 있습니까?

답변:


171

pom.xml에 다음을 제공하지 않았을 때 발생합니다.

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

이것이 없으면 플랫폼 특정 인코딩을 사용하고 있음을 의미하므로 경고가 발생합니다.


2
Maven의 FAQ 페이지에서도 솔루션을 찾을 수 있습니다. http://maven.apache.org/general.html#encoding-warnin
Jeff7566

예, 답변에 언급 된 줄을 추가 한 후 경고없이 잘 작동합니다. 감사 칼
리폰 알 Wasim

7

@Kal의 답변이 작동하지 않으면 지난 30 분 동안 배울 수 있습니다 ... 아래 링크는 위의 답변에 추가 줄을 추가하고 내 문제를 해결했습니다. 내 문제는 maven-resources-plugin 2.6과 관련이 있었지만 다음 솔루션의 제공자는 다른 문제를 해결했습니다 ... https://stackoverflow.com/a/3018152/2485075


내 pom.xml의 첫 번째 줄은 다음과 같습니다. <? xml version = "1.0"encoding = "UTF-8"?> Windows 7에서 동일한 경고를 찾았습니다. [경고] 플랫폼 인코딩 (실제로는 UTF-8)을 사용하여 필터링 된 복사 리소스, 즉 빌드는 플랫폼에 따라 다릅니다!
Ripon Al Wasim

1

특정 요구 사항 :

<!-- https://maven.apache.org/plugins/maven-resources-plugin/index.html -->
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-resources-plugin</artifactId>
    <version>3.1.0</version>
    <configuration>
        <encoding>UTF-8</encoding>
    </configuration>
</plugin>

플러그인이 이미 구성된 경우 추가해야합니다.

<encoding>UTF-8</encoding>
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.