好了,我被弄糊涂了,我得到以下编译错误
.../Currency.java:[16,60] unmappable character for encoding ASCII我在maven conf设置中使用以下命令设置编码
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<properties>以下是构建输出
[INFO] [clean:clean {execution: default-clean}]
[INFO] Deleting directory /export/jenkins_slave/workspace/Agent-Transfer/repo/foo-bar- api/target
[INFO] [resources:resources {execution: default-resources}]
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 10 resources
[INFO] [compiler:compile {execution: default-compile}]
[INFO] Compiling 59 source files to /export/jenkins_slave/workspace/Agent- Transfer/repo/foo-bar-api/target/classes
[JENKINS] Archiving /export/jenkins_slave/workspace/Agent-Transfer/repo/foo-bar- api/pom.xml to /export/ciserver/.hudson/jobs/Agent-Transfer/modules/com.cdc$foo-bar- api/builds/2012-03-31_14-49-02/archive/com.cdc/foo-bar-api/Agent-Transfer-SNAPSHOT/foo-bar- api-Agent-Transfer-SNAPSHOT.pom
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Compilation failure
/export/jenkins_slave/workspace/Agent-Transfer/repo/foo-bar-api/src/main/java/com/cdc/games/domain/Currency.java:[16,60] unmappable character for encoding ASCII我知道编码是从settings.xml中提取的,因为如果我删除它,就会得到编码警告
[WARNING] Using platform encoding (ISO8859-1 actually) to copy filtered resources, i.e. build is platform dependent!问题是,从上面的日志输出来看,它似乎只对resources:resources有影响,而对compile:compile没有影响。我从the wiki上的描述中期待着对.java文件进行编码
正如你所看到的,我是在从服务器上构建的,在主服务器上,它甚至使用了编码警告来构建,但我猜这是因为平台编码不同。我可以在从机上更改这一点,但我不希望这样,因为我希望构建是可移植的
发布于 2012-04-01 05:26:35
也许你正在使用一个编辑器,当你打字的时候,它没有确认Maven字符编码,而它会拾取一些其他依赖于平台或编辑器的编码?它在编辑器中可能看起来是正确的,但似乎有一些奇怪的字符意外地潜入了代码中。您是否尝试过删除Currency.java类中的第16行并重写它(不使用复制/粘贴)?
发布于 2012-12-15 04:03:26
在支持hudson/jenkins的多个实例时,我已经遇到过几次相同的问题。在我的例子中,在hudson/jenkins配置中,LANG env var没有显式设置为en_US.UTF-8 。
一旦我为hudson/jenkins安装设置了全局环境变量,我的包含unicode字符的java文件就不再给我一个错误。
发布于 2013-05-13 18:13:49
尝尝这个
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.resources.sourceEncoding>UTF-8</project.resources.sourceEncoding>
</properties>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<encoding>${project.build.sourceEncoding}</encoding>
<sourceEncoding>${project.build.sourceEncoding}</sourceEncoding>
</configuration>
</plugin>source
在你的server.xml中
<Connector port="8080" URIEncoding="UTF-8"/> https://stackoverflow.com/questions/9959663
复制相似问题