gpt4 book ai didi

gradle - 如何使许可证信息可用于Android Aar库的Google OSS许可证插件?

转载 作者:行者123 更新时间:2023-12-03 04:12:00 25 4
gpt4 key购买 nike

我正在使用OSS license plugin(注意:由于bug,我必须使用0.9.5版)

据我所知,不存在在Gradle中输入许可证信息的“官方”支持(即使该规范的更高版本中可能包含在Gradle metadata中),但是通过将pom文件与AAR Artifact 一起部署,则有可能声明许可证。

根据官方文档,这应该足够了:

How licenses are determined

The Gradle plugin scans the POM dependencies of the project at compile time. When a Maven POM exists for a direct dependency of the app, the plugin processes the element and embeds the link and title of each license in an Android asset in the final app APK.

Source: https://developers.google.com/android/guides/opensource#how_licenses_are_determined



我已经为我的Aar库这样做了。以下是在Nexus存储库中部署的生成的 pom.xml文件的摘要:

<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany</groupId>
<artifactId>my-artifact</artifactId>
<version>1.0.0</version>
<packaging>aar</packaging>
<licenses>
<license>
<name>Proprietary license</name>
<url>https://someurl</url>
</license>
</licenses>

不幸的是, OssLicensesMenuActivity仍然不会列出我的依赖关系。
我的声明如下:
api('com.mycompany:my-artifact@aar') {
transitive = true
}

我想该插件是为开放源代码许可证设计的,但我不认为这在技术上有多重要。

问题:如何为具有指定许可证的Android库打包,该许可证将显示在 OssLicensesMenuActivity中以显示依赖该库的应用程序?

最佳答案

我能够完成这项工作。诀窍是通过Maven2存储库使依赖关系可用。如果pom.xml文件与许可证标签一起可用,则它将显示在OssLicensesMenuActivity中。
据我所知,仍然没有指定许可证的“本地” Gradle方法。

关于gradle - 如何使许可证信息可用于Android Aar库的Google OSS许可证插件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59263640/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com