原因是文件的编码格式UTF-8+BOM造成,使用工具UltraEdit等工具可以修改文件编码格式,但不能多个包下同时修改,我觉得太麻烦了!于是网上寻找更好的办法,终于找到了,在编译插件里添加如下图红框部分即可:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>1.6</source> <target>1.6</target> <encoding>UTF-8</encoding> <compilerId>csharp</compilerId> </configuration> <dependencies> <dependency> <groupId>org.codehaus.plexus</groupId> <artifactId>plexus-compiler-csharp</artifactId> <version>1.6</version> </dependency> </dependencies> </plugin>
以上虽不报错,但没生成class文件,参阅 maven编译
可使用以下插件试试
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <encoding>UTF-8</encoding> <source>1.7</source> <target>1.7</target> <compilerId>eclipse</compilerId> </configuration> <dependencies> <dependency> <groupId>org.codehaus.plexus</groupId> <artifactId>plexus-compiler-eclipse</artifactId> <version>2.1</version> </dependency> </dependencies> </plugin>
在Ant/Maven中使用ecj编译器(Eclipse内置的Java编译器)
<property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter" />
Using Non-Javac Compilers