2017-06-19 8 views
0

私はプラグインを大量に使用するgrails 3アプリケーションを持っています。これらのプラグインの中には、ドメインクラスを提供するものがあります。 すべてのプラグインが同じゴルモンバージョンを持っていない限り、私のアプリケーションは起動しません。これは、ローカルに開発されたプラグインでは煩わしいことですが、サードパーティのプラグインを使用する場合には重大な問題になる可能性があります。grails 3アプリケーション内のプラグインで異なるgormバージョンを使用することはできますか?

ありスタックトレースでの詳細がありますが、関連する部分があるように見える:私は現在、GORM 6.1.3.RELEASEでのGrails 3.2.8を使用しています

Caused by: org.grails.core.exceptions.GrailsRuntimeException: Failed to introspect class: class (my class name) 
    at grails.core.ArtefactHandlerAdapter.isArtefact(ArtefactHandlerAdapter.java:129) 
    at grails.core.DefaultGrailsApplication.addOverridableArtefact(DefaultGrailsApplication.java:772) 
    at org.grails.plugins.AbstractGrailsPluginManager.registerProvidedArtefacts(AbstractGrailsPluginManager.java:310) 

が、これは他の非で発生しますgormのバージョンも一致しています。

もっと大きな目標を達成するにはより良い方法があれば、私の大きな目標は、gorm 6.1.xを最低限必要とするgrails ehcacheプラグイン(現在は3.0.0.M1)を使用することです。プラグインgithubサイトの会話ごとに、gorm 6.1とgrails 3.2.xの使用に問題はありませんが、これはデフォルトではありません。

ドメインオブジェクトを提供するプラグインを使ってgrails 3アプリケーションを実行する方法はありますか?これらのプラグインにはgormのマイナーバージョンが異なりますか?

答えて

0

誰かがこの問題を抱えている場合、答えは基本的に「いいえ」でした。

答えが長いと、「後方互換性のない方法でGroovyのバージョンが変更されていない限り」、明らかにそれが起こります。

Graemeからのコメントは、https://github.com/grails/grails-core/issues/10693ですが、要約すると、同じバージョンのGormプラグインを使用する必要があります。また、依存しているサードパーティのプラグインが同じバージョンであることを確認する必要があります。これは、少なくともドメインオブジェクトを提供するプラグインでのみ必要です。

関連する問題