maven build 成功就说明程序在引用maven中的依赖的时候没有出现 依赖包找不到的报错的行为,也就是说此时的maven文件是没有错误的,再查看一下maven的报错信息。
Could not resolve dependencies for project **.**:saleec:war
其中saleec是我们定义的project_name,因此基本可以确定是我们最近对pom文件的修改没有生效成新的引用,此时如果是eclipse,就点击maven -->update project 就可以了。
▲▲▲记得这个东西要勾选上
添加知识点:
【本地仓库和远程仓库的关系】
maven的仓库只有两大类:1.本地仓库 2.远程仓库,在远程仓库中又分成了3种:2.1 中央仓库 2.2 私服 2.3 其它公共库
本地仓库默认的地址是,~/.m2/settings.xml,
如果想要修改这个地址,就在引用 setting文件下写,
<settings>
<localRepository>D:\maven_new_repository</localRepository>
</settings>
这样就改成了D盘底下的maven_new_repository,如果想对所有的项目的默认地址改变的话,就修改.m2里头的setting文件,但是一般情况下不建议修改它,我们还是养成好习惯,用自建的setting'文件,便于做个性化配置嘛。
私服是一种特殊的远程仓库 是假设在局域网上的 当maven需要下载时会从私服请求 如果私服中不存在资源则从外部远程仓库下载 并缓存在私服上 我们可能把一些容易被墙的资源上传到私服上
远程仓库的配置怎么配呢?
<repositories>
<repository>
<id>jboss</id>
<name>JBoss Repository</name>
<url>http://repository.jboss.com/maven2/</url>
<releases>
<updatePolicy>daily</updatePolicy> <!-- 表示更新频率 never always interval daily daily为默认值 -->
<enabled>true</enabled>
<checksumPolicy>warn</checksumPolicy><!-- 表示maven检查和查验文件的策略 -->
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
<layout>default</layout>
</repository>
</repositories>
出于安全并对主仓库进行安全认证
<servers>
<server>
<id>same with repository id in pom</id>
<username>username</username>
<password>pwd</password>
</server>
</servers>
本地仓库是远程仓库的一个缓冲和子集,当你构建Maven项目的时候,首先会从本地仓库查找资源,如果没有,那么Maven会从远程仓库下载到你本地仓库。这样在你下次使用的时候就不需要从远程下载了。如果你所需要的jar包版本在本地仓库没有,而且也不存在于远程仓库,Maven在构建的时候会报错,这种情况可能是有些jar包的新版本没有在Maven仓库中及时更新