在做淘淘商城的项目一开始搭建后台maven工程的时候,做Taotao-common工程继承taotao-parent父工程时,在子工程的pom.xml文件中报错:Project build error: Non-resolvable parent POM for com.taotao:Taotao-common:0.0.1-SNAPSHOT: Could not find artifact com.taotao:Taotao-parent:pom:0.0.1- SNAPSHOT and 'parent.relativePath' points at wrong local POM
这里说的很清楚,是父工程找不到的错误,注意上图中的父工程的依赖配置是自动生成的,按理说不应该去报这种错误。
再试着将<parent>标签下的<artifactId>改为大写开头的就不报错。这里产生了疑问,父工程的名字是小写开头的taotao-parent,而且这段配置是自动生成的,为什么会是大写的。这里因为是初学者,分析很久之后才知道在maven中继承父工程应该配置的文件是和父工程中的pom.xml中的一致,因为父工程中的pom.xml是复制过来的,和自己创建的工程名字不配套,而自动生成的子工程pom.xml关于父工程的配置是根据你在new a maven project时生成的,不具备自己匹配父工程破pom.xml文件中的功能。这里也提醒我很重要的两点:
(1)工程项目建立的时候要注意命名大小写的区别。这是一种习惯和规范可以避免很多不必要的问题
(2)子工程pom.xml文件中关于父工程的配置是要和父工程中的pom.xml文件中的工程名字去对应的,而不是你在new一个maven project时自己写的工程名字。