获取在线github项目的依赖项的许可证

问题描述:

我目前正在建立一个网站,我有一个搜索栏,可以用关键字搜索Github。一旦我从中选择一个存储库,我希望能够获得该项目中使用的所有依赖关系的所有许可证的列表。获取在线github项目的依赖项的许可证

我是最新的;能够获得依赖关系列表。如何在不安装或运行任何其他软件的情况下获得许可证列表?

我开始使用来自maven的project-info-reports:dependencies命令,它运行得很漂亮,但后来我意识到当我在我的网站上选择回购时,我无法运行此命令。

然后我发现我可以使用Github Licenses API执行此任务,但事实证明,它可以给我一个回购许可证,但不能使用它的依赖关系。

我打算为尽可能多的项目实施它,但首先,我选择了Maven,因为它是最常见的之一。任何帮助表示赞赏。

+0

如何识别依赖关系? –

+0

我已经编写了一个解析器,可以解析pom文件,从github上的任何maven项目获取依赖项列表。我正在使用MavenXpp3Reader读取pom文件 – Aditya

+0

,那么您应该能够通过抓取每个保护的依赖关系。所以基本上你正在改写这部分Maven –

经过大量搜索后,我终于发现目前Github和Maven都没有提供API来帮助您获得pom文件中每个依赖项的开源许可证。

围绕taht工作的唯一工作是从工件ID,组ID和版本的依赖关系构建我自己的URL - 并在Maven Repository网站上搜索许可证。