我有一个使用Maven构建的Java项目。现在我需要支持UTF-8字符集。但是我不知道为什么默认字符集 (
这是我的Pom.xml:
Charset.defaultCharset()
) 总是 US-ASCII.
。
我已经将Pom.xml配置更改为UTF-8(用于编码),并设置了-Dfile.encoding=UTF-8
,但输出始终是 Unicode 字符的 "?
"(例如:"Việt Nam"
=> Vi?t Nam
)。
我在Ant builder上进行过检查,它的UTF-8字符是正确的。这是我的Pom.xml:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<outputEncoding>UTF-8</outputEncoding>
<argLine>-Dfile.encoding=UTF-8</argLine>
<encoding>${project.build.sourceEncoding}</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<id>cucumber</id>
<phase>test</phase>
<configuration>
<executable>src/scripts/cucumber.sh</executable>
<commandlineArgs>${host} ${port} ${profile}</commandlineArgs>
</configuration>
<goals>
<goal>exec</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
</properties>
谢谢您
更新 我的系统是
NetBeans 7.3.1 JDK 1.7 Mac OS 10.9.1
更新 我已经将IDE更改为Intelij IDEA,问题已经解决,但我不知道原因。
<project.resources.sourceEncoding>UTF-8</project.resources.sourceEncoding>
添加到属性中,但没有任何变化。 - Tuan Chau