Maven项目源编码不起作用

我有一个使用以下属性配置的Maven-Project:

 1.7 1.7 UTF-8 UTF-8  

在我的机器上,这些设置一切正常。 但是,在另一台机器上,当我检查它并尝试使用mvn install构建它时编译器错误unmappable character for encoding ASCII

 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.0.2:compile (default-compile) on project scuttle: Compilation failure: Compilation failure: [ERROR] /export/local-1/julian-downloads/scuttle/src/main/java/de/fu/mi/scuttle/handlers/sakai/SakaiVV.java:[99,39] error: unmappable character for encoding ASCII [ERROR] [ERROR] /export/local-1/julian-downloads/scuttle/src/main/java/de/fu/mi/scuttle/handlers/sakai/SakaiVV.java:[99,40] error: unmappable character for encoding ASCII [ERROR] [ERROR] /export/local-1/julian-downloads/scuttle/src/main/java/de/fu/mi/scuttle/domain/sakai/SakvvTermin.java:[66,30] error: unmappable character for encoding ASCII [ERROR] [ERROR] /export/local-1/julian-downloads/scuttle/src/main/java/de/fu/mi/scuttle/domain/sakai/SakvvTermin.java:[66,31] error: unmappable character for encoding ASCII 

我已经尝试使用-Dfile.encoding=UTF-8运行mvn-Dfile.encoding=UTF-8没有帮助。 $LC_CTYPE报告UTF-8

我能做什么?

你可以在这里看到完整的pom文件: https : //github.com/scravy/scuttle/blob/master/pom.xml

最后,khmarbaise的评论帮助我找到了解决方案:

我配置了编译器插件并在那里指定了源编码,现在一切都在无处不在:

    org.apache.maven.plugins maven-compiler-plugin 2.3.2  1.7 1.7 UTF-8     

你的pom中有所有正确的设置,所以这很好。 validation您的IDE(以及团队使用的其他IDE)是否配置为UTF-8。

接下来,清理您的本地.m2存储库并再次运行您的构建。 可能有可能您的一个传递依赖项没有使用正确的编码进行编译。 但是你的.m2中可能有“正确”的版本,这使得一切正常,而另一台机器上不存在相同的版本。

祝你好运! 我知道这些东西有多烦人。

而不是设置maven opts,设置新的环境变量 – JAVA_TOOL_OPTIONS = -Dfile.encoding=UTF8