mamoe / mirai-console

mirai 的高效率 QQ 机器人控制台
GNU Affero General Public License v3.0
1.19k stars 412 forks source link

mirai-console-gradle 适配gradle7 #368

Closed Nambers closed 3 years ago

Nambers commented 3 years ago

用gradle7构建mirai-console-gradle,然后使用publishToMavenLocal,在我的项目(也改成gradle7)内引入再调用buildPlugin是没有报错 这个pr只是提供参考,我也没测试其他subprojects可不可以用,你看完关掉就好了

改动:

Karlatemp commented 3 years ago

如果没有必要,请不要修改 gradle 版本号

Nambers commented 3 years ago

如果没有必要,请不要修改 gradle 版本号

嗯 确实,不过随着一些插件最新版更新到强制gradle7,比如shadowjar 7.0.0,那还是要上gradle7的吧,现在倒确实没什么必要

Karlatemp commented 3 years ago

如果没有必要,请不要修改 gradle 版本号

嗯 确实,不过随着一些插件最新版更新到强制gradle7,比如shadowjar 7.0.0,那还是要上gradle7的吧,现在倒确实没什么必要

https://github.com/johnrengelman/shadow/blob/a541237f76f5f5a9e9e210ed9edf60ad9fff61e6/src/main/groovy/com/github/jengelman/gradle/plugins/shadow/ShadowBasePlugin.groovy#L15-L18

shadow 要求 7.0.0 是 shadowJar 的内部逻辑, 按道理 6.8 构建出来的插件也是可以用在 7.0 的,所以尽量避免更新 gradle-wrapper 版本

Nambers commented 3 years ago

如果没有必要,请不要修改 gradle 版本号

嗯 确实,不过随着一些插件最新版更新到强制gradle7,比如shadowjar 7.0.0,那还是要上gradle7的吧,现在倒确实没什么必要

https://github.com/johnrengelman/shadow/blob/a541237f76f5f5a9e9e210ed9edf60ad9fff61e6/src/main/groovy/com/github/jengelman/gradle/plugins/shadow/ShadowBasePlugin.groovy#L15-L18

shadow 要求 7.0.0 是 shadowJar 的内部逻辑, 按道理 6.8 构建出来的插件也是可以用在 7.0 的,所以尽量避免更新 gradle-wrapper 版本

确实,理论上gradle应该向下兼容吧,官网上就说可能崩溃因为一些api deprecate image 那算了接下来继续看看吧,如果有需要再改

Nambers commented 3 years ago

@Karlatemp 我看了看norie的issue https://github.com/mamoe/mirai-console/issues/359, 其实貌似只要去掉这个在gradle7里弃用的插件就可以在gradle7里用了,我本地试了下没什么问题,你可以再test下