![]() |
1
34
这个
要从Nexus中删除这些内容,您可以轻松创建一个自动作业,每天清除快照存储库。它可以配置为保留一定数量的shapshot或将其保留一段时间。它非常简单,而且效果很好。 开发人员机器上本地存储库中的工件从“安装”目标到达那里,并且不使用这些时间戳…它们只是继续替换唯一的快照版本,除非您也在增加修订号(例如1.0.0-SNAPSHOT到1.0.1-SNAPSHOT)。 |
![]() |
2
13
此插件从本地存储库中删除项目的工件。只保留一个大型本地快照副本很有用。
|
|
3
7
我不喜欢任何提议的解决方案。删除maven缓存通常会显著增加网络流量并减慢构建过程。build helper maven插件只对一个工件有帮助,我想要一个解决方案,可以在一个简单的命令中从本地缓存中清除所有过时的时间戳快照工件。经过几天的搜索,我放弃了,决定写一个小程序。最后的程序似乎在我们的环境中运行得很好。所以我决定和其他可能需要这种工具的人分享。可以从github中提取源: https://github.com/nadestin/tools/tree/master/MavenCacheCleanup |
![]() |
4
2
至于其中的远程存储库部分,我认为前面讨论定期清除快照的答案将起作用。但没有人解决过您的问题中的本地开发人员工作站同步部分。 我们还没有开始使用Maven3,所以我们还没有看到快照开始在本地机器上构建。 但是m2eclipse有不同的问题。当我们启用了“工作区解决方案”并且项目存在于工作区内时,源更新通常会使我们处于出血边缘。但是我们发现让m2eclipse用Nexus中最近发布的工件更新自己是非常困难的。我们的团队中也遇到了类似的问题,尤其是因为我们有一个非常大的项目图。。。有很多依赖项不在您的工作区中,但会经常发布快照。 我敢肯定,这可以追溯到m2eclipse中的一个问题,即它不能完全按照应有的方式处理快照。您可以在eclipse中的Maven控制台中看到,m2eclipse告诉您它正在跳过最近发布的快照的更新,因为它有一个缓存版本。如果从运行配置或命令行执行-U操作, 马文 将获取元数据更改。但是一个“更新快照…”选项应该告诉m2eclipse让Maven终止这个缓存。它似乎没有被传下去。如果你有兴趣投票的话,似乎有一个bug被归档了: https://issues.sonatype.org/browse/MNGECLIPSE-2608 你在某个地方的评论中提到过这个。 解决这个问题的最好办法似乎是让开发人员在m2eclipse内部出现故障时清除本地工作站。对另一个问题的类似解决方案。。。其他人报告了Maven 2.2.1和3支持m2eclipse的问题,我也看到了同样的情况。 我希望如果您使用的是Maven3,您可以将其配置为只提取最新的快照,并将其缓存到存储库所说的时间(或者直到您手动使其过期)。希望这样您就不需要在本地存储库中放置一堆快照。
除非你说的是一个构建服务器,它正在手动执行
希望这有帮助-如果它不能解决你的问题,请让我知道我错过了什么。 |
![]() |
5
1
在groovy中
,删除带时间戳的文件,如
安装 Groovy ,将脚本保存到一个文件中,并计划每周执行、开始、登录,以及任何适合您的操作。
或者,您甚至可以使用
gmavenplus-plugin
. 注意,maven如何将存储库位置设置到属性中
|
![]() |
6
0
在POM文件中添加以下参数 聚甲醛
https://maven.apache.org/plugins/maven-dependency-plugin/copy-mojo.html POM示例
在Jenkins中配置:
|