maven编译报错:非法字符: \65279

执行maven命令mvn compile时报错,如下:
maven编译报错:非法字符: \65279_第1张图片
原因是文件的编码格式UTF-8+BOM造成,使用工具UltraEdit等工具可以修改文件编码格式,但不能多个包下同时修改,我觉得太麻烦了!于是网上寻找更好的办法,终于找到了,在编译插件里添加如下图红框部分即可:
maven编译报错:非法字符: \65279_第2张图片
<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

你可能感兴趣的:(maven,非法字符,65279)