You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Redmine插件修改代码需重启生效:如何实现即时重载?

Redmine插件修改init.rb即时生效方案
  • 修正配置位置:别把config.reload_plugins = true加在根目录的environment.rb里,得放到config/environments/development.rb中。Redmine的环境配置分环境生效,开发环境的配置优先级高于全局配置,之前的位置不对所以没起作用。

  • 手动触发插件重载:init.rb是插件的初始化文件,Redmine默认启动时只加载一次。就算开了插件重载,有些初始化逻辑(比如注册菜单、添加权限、配置路由)也不会自动刷新。这时可以打开Redmine控制台(运行rails c),执行:

    Redmine::PluginLoader.reload
    

    执行完刷新localhost:9292/admin/plugins就能看到变更。

  • 用工具自动监听重载:可以用guard工具监听文件变化,自动触发重载。先安装guard,然后在项目根目录创建Guardfile,写入:

    guard :shell do
      watch(%r{plugins/你的插件名/init\.rb}) do
        `rails runner "Redmine::PluginLoader.reload"`
      end
    end
    

    启动guard后,每次修改保存init.rb都会自动执行重载操作。

  • 注意版本兼容性:如果用的是旧版Redmine,config.reload_plugins可能有兼容性问题。试试升级到最新稳定版的开发分支,或者手动调整插件加载的初始化逻辑,确保重载时能重新解析init.rb。

内容的提问来源于stack exchange,提问作者Abdul Rafey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 17:42:37