我们使用Eclipse + Maven插件从Nexus获取库,这很好。 我们还将内部库放在Nexus上。
当我们向Nexus发布新版本的库时,我们希望让旧版本被弃用"是否可能?例如,当使用Eclipse的Maven插件时,他选择旧版本,Eclipse显示"它已被弃用"。
由于某些旧系统仍需要旧版本,因此我们无法直接将其从Nexus中删除。但我们不希望新系统使用旧版本。
答案 0 :(得分:5)
您可以通过maven-enforcer-plugin添加规则,以防止使用旧版本,但只能通过必须由所有新项目使用的公司pom来使用。
答案 1 :(得分:2)
无法在Maven中“弃用”某个版本。
原因是旧的版本仍然有效 - 旧项目仍然使用它,他们很高兴。通常没有必要强制项目升级。
此外,Nexus(默认情况下并且有充分理由)不允许您更改已发布的POM。
您需要的是一种沟通人们现在应该使用的最佳版本的方法。这样做的正确方法是一个网站。只需在您的POM中的<url>
元素中添加网址,以便人们可以轻松找到它。
此外,您可以使用versions plugin中的mvn versions:display-dependency-updates
和mvn versions:display-plugin-updates
来获取版本高于您的依赖项列表。
答案 2 :(得分:0)
您不想将其从Nexus中删除。如果有人想要构建旧版本的软件,会发生什么?
我宁愿使用Java的方法/类弃用方法,也不赞成新库版本中的旧API调用。