【问题标题】:Gradle plugin compatibility - how to find out?Gradle 插件兼容性 - 如何找出?
【发布时间】:2015-01-13 09:56:21
【问题描述】:

1.11+ 的 Gradle 插件是否可以用于 2.+,如果不能,如何找出兼容性状态?

具体来说,我在项目 spring-boot 项目中使用 Gradle 1.11 取得了成功。在升级到 Gradle 2.2 时,我注意到 spring-boot 插件似乎不可用,尽管我在 Spring Boot Gradle 文档 (http://docs.spring.io/autorepo/docs/spring-boot/1.2.0.BUILD-SNAPSHOT/reference/html/build-tool-plugins-gradle-plugin.html) 中没有找到对特定 Gradle 版本的任何引用。

使用 Gradle 2.2,我得到:

* What went wrong:
A problem occurred evaluating root project 'NN'.
> Failed to apply plugin [id 'spring-boot']
   > A problem occurred configuring project ':webapp'.
      > Extension of type 'SpringBootPluginExtension' does not exist. Currently registered extension types: [DefaultExtraPropertiesExtension, DefaultArtifactPub
licationSet_Decorated, ReportingExtension_Decorated, DefaultProjectSourceSet_Decorated, DefaultBinaryContainer_Decorated]

【问题讨论】:

  • 所以结论似乎没有简单的方法来找到插件兼容性。在这种特殊情况下,我实际上可以通过将 Spring Boot 升级到 1.2.0.RC1 来解决我无法使用 Gradle 2.2 的问题。
  • Boot 的插件旨在与最新版本的 Gradle 1.x 和 Gradle 2.x 一起使用。您之前使用的是哪个版本的 Spring Boot?我刚刚尝试了 1.1.9.RELEASE 和 Gradle 2.2,一切看起来都还不错。如果您可以让我们知道不兼容的位置,我们应该能够解决它。
  • 啊。回头查看我使用的版本,我以为我使用的是 1.1.6.RELEASE,似乎我错误地在 1.0.1.RELEASE 版本中使用了 boot-gradle-plugin。

标签: gradle spring-boot


【解决方案1】:

这取决于特定的插件,理想情况下会在那里进行测试/记录。就 Gradle 使用的 Groovy 版本而言,1.x 到 2.x 是一个很大的飞跃,这可能会导致在 Groovy 中实现的插件出现兼容性问题。此外,使用已弃用或内部 API 的 1.x 插件可能无法在 2.x 中运行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-08-07
    • 2020-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-10
    • 2011-10-13
    相关资源
    最近更新 更多