发布于 2016-07-02 12:34:07 | 2671 次阅读 | 评论: 1 | 来源: 网友投递
Apache Maven 项目构建工具
Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。当你使用Maven的时候,你用一个明确定义的项目对象模型来描述你的项目,然后Maven可以应用横切的逻辑,这些逻辑来自一组共享的(或者自定义的)插件。
可能原因是maven私服找不到相关jar。
我们可以到http://mvnrepository.com中找到相应的jar,上传到私服即可。
然后到本地仓库中找到相应的文件夹路径,删除相关文件夹后,再执行maven命令。
下面是其他网友的补充:
方法二、
今天使用命令mvn compile编译maven项目时提示错误信息,部分错误信息如下:
...... was cached in the local repository, resolution will not be reattempted until the update interval of nexus ......
发现proxool-0.9.1.jar下载到本地时失败,从提示可知是本地仓库的缓存(cached)造成,于是我删除目录C:\Users\Administrator\.m2\repository\proxool\proxool\0.9.1后重新下载(即执行mvn compile命令)即可成功!
注意你要确定远程仓库中存在此jar(proxool-0.9.1.jar)包
方法三、
问题描述
在使用公司内部的maven仓库编译项目时,由于新加入了几个依赖包,第一次编译失败了,此后在修复了公司内部maven仓库后编译项目出现错误
was cached in the local repository, resolution will not be reattempted until the update interval of nexus has elapsed or updates are forced -> [Help 1]
问题原因
Maven默认会使用本地缓存的库来编译工程,对于上次下载失败的库,maven会在~/.m2/repository/ / / /目录下创建xxx.lastUpdated文件,一旦这个文件存在,那么在直到下一次nexus更新之前都不会更新这个依赖库。
解决办法:
删除~/.m2/repository/ / / /目录下的*.lastUpdated文件,然后再次运行mvn compile编译工程。
另外也有说可以修改~/.m2/settings.xml文件,将其中的仓库添加
来强制每次都更新依赖库,但这个方法我还没有试过,这里先记下,下次再碰到这个问题的时候再试试。