maven常见错误有哪些
更新:HHH   时间:2023-1-7


本篇内容主要讲解“maven常见错误有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“maven常见错误有哪些”吧!

1)pom文件中依赖的使用范围<scope>的取值:

	compile		默认值。编译、运行时都可以使用该依赖。该依赖会被打包。

	provided	该依赖在编译时可以用,在运行时不可用,运行时如果容器提供了该依赖,则程序可以使用容器提供的依赖。该依赖不会被打包。

	runtime		该依赖在编译时不可用,在运行时可以使用。

	test		只有在测试编译和测试运行时可用。


	举例:
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-tomcat</artifactId>
			<!-- springboot项目在打包成war包放到tomcat下跑时,需要将该依赖的范围设为provided -->
			<scope>provided</scope>
		</dependency>
	
2)打war包:
	1>进入到工程目录中,按住shift键,然后右键选择"在此处打开命令窗口"。
	
	2>在命令行中执行命令:mvn clean package -Dmaven.test.skip=true -P env-prod	
		说明:
			使用mvn package进行编译、打包时,maven会执行src/test/java下的JUnit测试用例,故我们打包时需要跳过执行测试用例这一过程。
		参数:
			-Dmaven.test.skip=true	表示不执行测试用例,也不编译测试用例类。
			-P env-prod				指定打包时使用的配置文件,即指定pom文件中<profile>标签的id属性。
			
	3>在工程目录的target文件夹中,我们就可以看到刚才打的war包了。

常见错误:

【错误1】
	org.apache.maven.project.ProjectBuildingException: Some problems were encountered while processing the POMs:
	[FATAL] Non-resolvable parent POM: Could not find artifact com.jxn.parent:jxn-parent:pom:0.0.1-SNAPSHOT and 'parent.relativePath' points at wrong local POM @ line 4, column 10
	解析:
		无法解析父级的POM文件。
	说明:
		当设置了<parent/>时,是需要有一个relative path来查找父项目的pom.xml的,而如果没有,那么默认的父项目pom.xml就在该pom.xml的父附录中。如果没有,就会根据groupId和artifactId在本地和远端maven仓库中找。

	解决方法:
		方法一:由<relativePath>../../pom.xml</relativePath>指定正确的父pom路径,默认为../pom.xml
		方法二:将父项目安装到本地仓库中:选中父项目,右键选择Run As -- Maven install
	
	
【错误2】
	Project build error
	分析:更新的jar包中,缺少这个包,重新加载一次:
	
	解决方案:
		1)选中项目,先project----->clean一下
		2)选中项目,Debug AS ----->maven clean
		3)加载pom里的jar,Debug AS------>maven INSTALL
	
	
【错误3】
	从SVN上检出的pom.xml文件报错。
	Could not calculate build plan:xxx or its dependencies could not be resolved: Failed to read artifact descriptor for xxx.jar
	
	
	或者报 Cannot resolve symbol 'ClassName'(无法解析某一个类) 的错误。
	
	
	分析:
		由于网络原因没有将Maven的依赖下载完整,出现了*.lastUpdate文件,导致无法重新下载完整的依赖。
		
	解决方案:
		1)删除所有以.lastUpdate结尾的文件
			a)切换到maven的本地仓库(D:\repository)
			b)在当前目录打开cmd命令行
			c)执行命令:for /r %i in (*.lastUpdated) do del %i
		2)在项目上执行 Maven Update	

到此,相信大家对“maven常见错误有哪些”有了更深的了解,不妨来实际操作一番吧!这里是天达云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

返回云计算教程...