You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Grails 3:如何禁用插件但保留JAR包中的类?

在Grails 3中禁用插件、仅保留依赖类的方法

当然有办法啦!Grails 3基于Gradle构建,我们可以通过以下几种方式实现只引入依赖中的类、禁用插件的自动加载与初始化:

1. 在Gradle配置中直接排除插件加载

如果你的依赖是一个标准的Grails插件(比如命名为grails-plugin-xxx的包),Grails默认会自动识别并加载它的插件逻辑。我们可以在build.gradlegrails配置块中明确排除该插件:

grails {
    plugins {
        exclude 'your-plugin-name'
    }
}

这里的your-plugin-name是插件的官方名称(比如spring-security-core),配置后Grails就不会执行该插件的任何初始化逻辑,只会将依赖中的普通类引入项目。

2. 针对特定插件禁用其功能

如果需要更精细地控制,也可以在项目的配置文件(application.ymlapplication.groovy)中直接禁用指定插件:

使用application.yml的示例:

grails:
    plugins:
        yourPluginName:
            enabled: false

使用application.groovy的示例:

grails.plugins.yourPluginName.enabled = false

这种方式同样会阻止插件的初始化流程,只保留依赖中的类供你直接调用。

3. 调整依赖引入的范围(可选)

如果你的依赖同时包含插件代码和普通工具类,还可以通过Gradle的依赖配置,排除不需要的插件模块:

implementation('com.example:your-dependency:1.0.0') {
    exclude module: 'unwanted-plugin-module'
}

不过通常前两种方法已经足够解决问题,这个可以作为补充方案。

这样操作后,你就能完全使用依赖中的类,而不会触发任何Grails插件的功能逻辑啦。

内容的提问来源于stack exchange,提问作者Miguel Ping

火山引擎 最新活动