1

我想将我的大型构建文件的通用部分外部化,以便在项目之间共享它们。在我看来,最简单的选择是将 Gradle 代码放入新的构建文件中并将它们存储在服务器上。然后我可以将它们包含在“应用自:”中。

这样做的缺点是,如果没有 Internet 连接,构建会失败。

你将如何解决这个问题?我可以让 Gradle 缓存在线构建脚本吗?

感谢您分享您对这个问题的看法。

4

3 回答 3

6

我现在制作了一个插件来实现这一点:https ://github.com/kageiit/gradle-url-cache-plugin

于 2014-11-17T18:37:53.187 回答
1

脚本插件的缓存将在 Gradle 的未来版本中提供。同时,如果您需要离线支持,最好的选择是编写一个二进制插件(实现类org.gradle.api.Plugin),将其打包为 Jar,将其发布到存储库,并在任何构建classpath的部分中将其指定为依赖项buildscript希望使用该插件。有关更多信息,请参阅 Gradle 用户指南中的编写自定义插件一章。

于 2012-06-18T10:11:31.070 回答
0

此功能在 Gradle 4.2-rc-1 及更高版本中可用

此版本的发行说明说 HTTP(S) 上的脚本插件现在已缓存并可离线使用。

更好地支持通过 HTTP 加载的脚本插件

脚本插件通过apply from: 'URL'语法应用于 Gradle 设置或项目。此版本中改进了对 http:// 和 https:// URL 的支持:

  • HTTP 脚本插件被缓存以供--offline使用。
  • HTTP 脚本插件的下载遵循代理身份验证设置。
于 2017-09-07T20:49:52.343 回答