Maven项目取决于以不同编码编译的JAR

时间:2013-05-06 11:23:57

标签: java maven encoding maven-3

如果我的项目使用UTF-8编码编译,如下所示:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
        <encoding>UTF-8</encoding>
    </configuration>
</plugin>

我有一个使用cp1252编码编译的依赖项,可能会出现什么样的问题?考虑到除.java文件外,还有资源文件。

3 个答案:

答案 0 :(得分:2)

应该没有任何问题,这只是将.java文件转换为.class文件时使用的编码 - 一旦编译了类,字符串在内部都是Unicode。

您为编译器配置的编码仅与.java源文件相关 - 其​​他资源(如.properties.xml文件打包到JAR中可能采用不同的字符编码,重要的是加载它们的代码必须在运行时为每个文件使用正确的编码。

答案 1 :(得分:0)

希望没有。无论源代码是什么,编译后的jar文件都是相同的。至少对于类文件。文本资源可能是另一回事。

答案 2 :(得分:0)

没有任何问题,你有依赖jar而不是src,jars中的类使用一个相同的字符串文字编码 - 修改过的UTF-8 http://en.wikipedia.org/wiki/Java_class_file