列出所有可用版本的依赖项。

huangapple go评论52阅读模式
英文:

List all available versions of a dependency

问题

我想列出特定依赖项的所有可用版本。

原因:当发现漏洞时,该依赖项会被我们构建在JFrog Xray之上的机制阻止。我想生成一个仍未解锁的依赖项列表。

我知道我可以询问Artifactory的REST API,但这只会列出已下载(缓存)的版本,而不会列出所有可用版本(例如在MavenCentral上)。

根据我的理解,Versions Maven插件已经包含了这样的机制,并在其目标中使用它(比如versions:use-latest-releases)。所以这应该是可能的,我想知道如何实现。

英文:

I would like to list all available versions of a given dependency.

The reason: When a vulnerability is found, the dependency gets blocked by a mechanism we built upon JFrog Xray. I want to generate a list of dependencies which are still unblocked.

I know that I can ask the REST API of Artifactory, but this will only list versions which are already downloaded (cached), not every version that is available (e.g. on MavenCentral).

From what I understand the Versions Maven Plugin has such a mechanism included and uses it for their goals (like versions:use-latest-releases). So it should be possible and I would like to know how.

答案1

得分: 1

  1. 本地依赖可以存在于你的个人电脑上,路径在 .m2/repository 文件夹内。
  2. 在你的本地 Nexus 服务器上。
  3. 在 Maven 中央仓库中。

第一种情况 - 请查看你的 .m2/repository 文件夹。

第二种情况 - 你可以使用网络搜索来查找本地仓库。

第三种情况 - 我不清楚 Artifactory 是否有 API,因此建议你在类似 mvnrepository.com 的索引网站上查找。

英文:

Dependencies can exist in 3 places.

  1. locally on your PC
  2. on your local Nexus server
  3. Maven central repos

number 1 - look in your .m2/repository folder

number 2 - use the web search for your local repository

number 3 - I'm not aware of an api for Artifactory, so I suggest instead you look on an indexing site like mvnrepository.com

答案2

得分: 1

在Maven插件中,您可以使用Resolver API:

RepositorySystem.resolveVersionRange(...)

示例:FindAvailableVersions

Maven插件示例:ResolveArtifactMojo

英文:

In Maven plugin you can use Resolver API

RepositorySystem.resolveVersionRange(...)

Example: FindAvailableVersions

Example of Maven plugin: ResolveArtifactMojo

huangapple
  • 本文由 发表于 2023年3月9日 20:03:55
  • 转载请务必保留本文链接:https://go.coder-hub.com/75684356.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定