继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

maven一波流(6)——解决烦人的maven工程编码和jdk版本自动切换问题

程序员大阳
关注TA
已关注
手记 357
粉丝 1.5万
获赞 1523

背景

有时候拿过别人的工程使用,update project之后发现编码不对,中文全部乱码,然后jdk也自动变成了1.5版本,项目报了一大堆错误。

这时候老手心里还是很淡定,右击项目,在属性里修改下编码,然后在build path里面改下jdk版本,搞定。

后来再update project编码和jdk又自动变回去了,于是乎大怒,无奈又重新操作一遍。

周而复始,甚为有趣。

问题分析

肯定是maven引起的,因为用maven update的时候才出现这问题。

怎么修改,肯定一个是修改maven整个的配置文件,也就是maven安装目录下的conf目录下的settings.xml,然后修改了之后eclipse也得知道这个修改,得从eclipse的首选项preferences里面更新下配置,最后改下项目的pom.xml配置文件。

这样从maven到eclipse到工程全部统一了,应该OK。

具体实施

首先改下settings.xml

打开我计算机目录D:\Tool\\apache-maven-3.5.3\\conf

<profiles></profiles>中间添加如下代码,就是指定JDK为1.8版本。

<profile>    
		<id>jdk-1.8</id>    
		 <activation>    
			  <activeByDefault>true</activeByDefault>    
			  <jdk>1.8</jdk>    
		  </activation>    
	<properties>    
	<maven.compiler.source>1.8</maven.compiler.source>    
	<maven.compiler.target>1.8</maven.compiler.target>    
	<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>    
	</properties>    
</profile>

然后改下eclipse的首选项

点击eclipse菜单Window-Preferences-Maven-User Settings,将Global和User的Settings都设置为刚刚修改过的配置文件,并且点击Update Settings后Apply。

图片描述

修改项目maven配置文件pom.xml

打开项目pom.xml文件,在 <plugins></plugins>之间添加两个插件,用于指定资源文件编码,指定编译的jdk版本并制定编译字符集编码。

	<!-- 本插件解决资源文件编码问题 -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-resources-plugin</artifactId>
				<version>2.5</version>
				<configuration>
					<encoding>UTF-8</encoding>
				</configuration>
			</plugin>
			<plugin>
				<!-- 本插件用于指定maven编译的jdk版本。maven3默认用jdk1.5,maven2默认用jdk1.3。 -->      
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>2.3.2</version>
				<configuration>
					<!-- 源代码使用的JDK版本 --> 
					<source>1.8</source>
					<!-- 生成的目标版本 -->
					<target>1.8</target>
					<!-- 字符集编码 -->
					<encoding>UTF-8</encoding>
				</configuration>
			</plugin>

总结

多看文档多总结,多多益善。

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP