新建了个web应用,用maven配置的。
Java源代码采用了utf-8编码格式。
本地编译打包,报错误。
因为系统默认编码是GBK,所以须要采用utf-8来编译。
采用以下方式:
在pom中添加以下:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
<encoding>UTF-8</encoding>
</configuration>
<plugin>
添加这个以后,发现仍是不行。依然报错。
可见编译依然没有采用utf-8编码。
检查pom文件中,compile插件的配置。擦,居然把这个plugin配置在<pluginManagement>里面去了,以下:
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source> web
<target>1.6</target> apache
<encoding>utf-8</encoding>
</configuration>
</plugin>
......
</plugins>
<pluginManagement>
而其实正确的作法应该是:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
<encoding>utf-8</encoding>
</configuration>
</plugin>
......
</plugins>
<build>
其实,相似的错误还有,denpendencies 和dependencyManagement里的denpendencies的区别。