这是一个场景。我有一个Grails应用程序,它依赖于多个插件。
说应用程式取决于pluginMain,pluginA和pluginB。即application.properties看起来像
pluginMain版本1
插件A版本X
pluginB版本X
pluginB是我编写的自定义插件。
pluginA是第三方插件。我无法控制源代码。
pluginA和pluginB都依赖pluginMain。
因此,在应用程序加载时,根据这些插件的加载顺序,pluginA和pluginB中的每一个都尝试安装pluginMain。问题是,如果pluginA首先加载,它将安装pluginMain的版本2;如果pluginB首先加载,则将安装pluginMain的版本1。该应用程序正在使用pluginMain的version1。在这种情况下,将安装两个版本的pluginMain。
由于存在多个版本,因此该应用在启动后会崩溃。确切地说,它会导致登录页面上的无限重定向。
所以我想知道是否有办法指定插件的加载顺序,以便在应用程序中我可以说加载pluginMain版本1,而所有其他插件都将使用此版本的pluginMain。
最佳答案
您可能可以强制您的应用在配置中使用所需的插件版本。
Plugin Dependencies
我遇到过类似的情况,但最后只是更新自定义插件以使用较新版本的依赖插件。
关于grails - Grails App插件依赖项加载顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7838527/