发布于 2016-07-02 12:34:07 | 2671 次阅读 | 评论: 1 | 来源: 网友投递

这里有新鲜出炉的Maven教程,程序狗速度看过来!

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文件,将其中的仓库添加
 

复制代码
代码如下:

<updatePolicy>always</updatePolicy>


来强制每次都更新依赖库,但这个方法我还没有试过,这里先记下,下次再碰到这个问题的时候再试试。



最新网友评论  共有(1)条评论 发布评论 返回顶部
pnp 发布于2016-07-09 06:00:06
真的很好,谢谢楼主
支持(1)  反对(0)  回复

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务