プラグインがインストールされていることをGrailsで検出する方法はありますか?たとえば、「Acegi」プラグインがインストールされているかどうかを知る必要があります。もしそうなら、私は別のコードを実行することができます。プラグインがインストールされていない場合(これは実行可能なオプションです)、別のコードを実行できます。
前もって感謝します。
プラグインがインストールされていることをGrailsで検出する方法はありますか?たとえば、「Acegi」プラグインがインストールされているかどうかを知る必要があります。もしそうなら、私は別のコードを実行することができます。プラグインがインストールされていない場合(これは実行可能なオプションです)、別のコードを実行できます。
前もって感謝します。
これにはプラグインマネージャーを使用できます。
import org.codehaus.groovy.grails.plugins.PluginManagerHolder
if (PluginManagerHolder.pluginManager.hasGrailsPlugin('acegi')) {
...
}
< plugin:isAvailable>タグと<plugin:isNotAvailable>タグを使用できます。
OPのacegi
プラグインを使用した例:
<plugin:isAvailable name="acegi">
You have acegi installed!
</plugin:isAvailable>
などの特定のホルダークラスPluginManagerHolder
は、Grailsのいくつかのバージョンで非推奨になり、Grails2.4で削除されていることに注意してください。grails.util.Holders
これらは、単一のアクセスポイントを介してアプリケーション全体のさまざまなオブジェクトすべてにアクセスできる単一のクラスに置き換えられました。
import grails.util.Holders
if (Holders.pluginManager.hasGrailsPlugin('acegi')) {
...
}