列出所有Gradle依赖项及其许可证

19

我希望能够列出我的Gradle构建中所有Maven依赖项(包括传递依赖项)以及它们的许可证。使用IntelliJ Gradle插件是否可以实现?如果可以,该怎么做?或者,使用Gradle命令行指令也可以。


不知道许可证信息是否存储在Gradle中。你可能需要深入源代码或进行一些调试。 - Opal
不在Gradle中,而是在Maven中。该项目包括具有Gradle的Maven依赖项。 - Matthias Kricke
2
运行 gradle dependencies 是您要寻找的吗? - Opal
啊,我还没有通过命令行使用过Gradle。依赖项列表非常有帮助。不过,许可证还缺失。也许有一个参数可以显示它们? - Matthias Kricke
不,我不想这样做。稍后会调查一下,也许会找到帮助的方法。 - Opal
显示剩余4条评论
4个回答

17

我建议使用license-gradle-plugin。它可以通过downloadLicense任务显示你的依赖项的许可证。


2
是的,这是一个很棒的工具。您能否详细说明如何正确设置属性?我不知道在哪里进行以下操作:downloadLicenses { includeProjectDependencies = true dependencyConfiguration = 'compile' } 这应该是build.gradle文件的一部分吗? - Matthias Kricke
1
好的,我自己找到了。它必须在build.gradle中。但是我没有搜索compile而是providedCompile :) - Matthias Kricke
3
如何生成报告呢?./gradlew buildLicenses 对我没有任何作用。 - Shrikant Prabhu
2
我在一个Android项目中遇到了麻烦。报告是空的。 - Stan
跟我一样,我的报告也是空的... - Jaward Sally
显示剩余2条评论

9

如果有人来到这里并发现许可证Gradle插件似乎没有维护,Gradle-License-Report也可以满足此需求。


这个项目似乎得到了维护,而 license-gradle-plugin 在我的 7.4 Gradle 项目中似乎无法工作,而 Gradle-License-Report 则可以正常工作。 - Alan Cabrera

2
我 Android 项目中唯一起作用的插件是 Gradle License Plugin。安装非常简单——在项目级别的 build.gradle 中添加一行,在应用级别的 build.gradle 中添加另一行。顺便说一下,我的项目相对复杂,但没有多个模块。
附注:我还尝试过 Hiery Nomus 的 license-gradle-plugin 和 jk1 的 Gradle-License-Report,但都没有成功。链接如下:https://github.com/hierynomus/license-gradle-pluginhttps://github.com/jk1/Gradle-License-Report

这是唯一一个也适用于我的方法。其他的生成的文件是空的。我安装时遇到了一些麻烦,但那是因为我在项目级别的build.gradle中应用插件,显然它不起作用。 - Aleksi Sjöberg

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接