0

BuildConfig.groovyにリンクされたメインアプリとそのローカルモジュールで構成されるGrailsアプリがあります。

grails.plugin.location.'mymodule' = "modules / mymodule"

mymoduleでメインアプリのヘルパークラスを使用したいのですが、mymoduleをメインアプリに依存させる方法が見つかりません。mymoduleコンパイルのクラスパスに余分な部分を追加することを考えていましたが、ここで立ち往生しています。

これを行う方法はありますか?

4

2 に答える 2

1

少なくとも簡単に、あなたがやろうとしていることをすることはできません。これは、最初にコンパイルされるプラグインからの一方向の依存関係です。これを行う唯一の方法は、登録できるプラグインにコールバックメカニズムを作成することです。このようにして、アプリはプラグインに登録され、プラグインは必要に応じてクラスを呼び出します。

プラグインとその依存関係をjarと考えてください。そのように設計されていない限り、一部のライブラリからjarをダウンロードして、コードを呼び出すことを期待することはできません。

ヘルパークラスがある場合、メインアプリの何にも依存しないと仮定して、メインアプリからローカルプラグインが依存する別のプラグインにそれらを移動することをお勧めします。このように、メインアプリとローカルプラグインの両方がヘルパークラスに依存します。または、最初にヘルパークラスをプラグインに移動するだけで、プラグインとメインアプリの両方で利用できるようになります。

于 2009-12-11T21:23:38.767 に答える
0

私が従うかどうかを見てみましょう-彼のセットアップ(私のものは同じです)で、application.propertiesを編集して、ローカルプラグインとコアアプリの両方の依存関係として共有プラグインを含めます-これはベストプラクティスですか?プラグインは「2回インストール」されますか?2か所に設置されているようです

コアアプリといくつかのローカルプラグイン全体でSpringセキュリティプラグインを使用することを単に探しています

于 2010-09-13T09:47:13.880 に答える