DataNucleusのエンハンサーフレーク状?
-
12-09-2019 - |
質問
私はGoogle App EngineのでGWTアプリケーションを作成し、Googleのデータストアを使用しています。誰がすべてのように出てフレーク状であることDataNucleusの問題を持っていますか?
私は、クラスを保存することができ、およびDataNucleusのはそれだけで罰金のことだ行います。私はクラスで何も変更(でも空白の追加)、その後、保存した場合、私は次のエラーを取得する:
私は私のプロジェクトをきれいにしたら、DataNucleusのエンハンサーで完了しました 0のクラスの成功。タイミング: 入力= 37ミリ秒、0秒を高める、合計= 37 ミズ。完全な詳細については、ログを参照してください DataNucleusのエンハンサーが完了していません クラスが強化されました。ログを参照してください 完全な詳細については、
、DataNucleusのは、再び幸せです。
日食を使用している場合、これは一般的ですか?回避策はありますか?
解決
DataNucleusのエンハンサーの のあるGoogleのEclipseプラグインでのを呼び出しました。これは、拡張を引き起こし、そのプラグインです。エンハンサー自体はちょうどそれが設けられているクラスを高め、その仕事をしていません。エンハンサーについて「サクサク」何も...
あなたの代わりに、その後DataNucleusのEclipseプラグインを使用する場合は、直前に例えば展開強化、「オンデマンド」機能拡張を行うことができます。
- アンディ( DataNucleusのの)
他のヒント
私はいくつか同じような経験を有しており、同様のプロジェクトをきれいにする必要がありました。そのすべてではない時間が、私は定期的に、GoogleのプラグインをEclipseの使用していたとき、それは、1日に1回または2回起こったのだと思います。
私はエラーを取得した「Persistentクラスxはいないよう強化されているように」と私はパッケージ名を変更し、GAEはプラグインのみ特定のクラスを強化するために設定されていることに気づきました。
あなたはORM ...プロジェクトproperties..Google ... App Engineの中で強化を必要とするクラスのリストを変更することができます。
私はそれを強制的にDataNucleusのプラグインをインストールしますが、私はSerialVersionUIDsの自動生成に伴う問題に遭遇したので、日食GAEプラグインは「常に」私のクラスを高めないと同じ問題を抱えていました。私は、「ビルド中にエラー」というエラーを得たが、何のコンパイルエラーはありませんでした。 DataNucleusのプラグインをアンインストールし、私は正常に戻りました。彼らはよく一緒にプレーしていない、それはそうです。
私はGAEのv1.3.3.1を使用していると私は、Eclipseプラグインv2.0.2
DataNucleusのインストールそれは最もエレガントな解決策ではない場合でも、プロジェクトの作品を清掃ます。
私は同じ問題を抱えていました。 Eclipseの上のログファイルをチェックすると、このメッセージが表示されます:
Caused by: org.datanucleus.exceptions.NucleusException: Plugin (Bundle)
org.datanucleus.store.appengine" is already registered. Ensure you dont have multiple JAR versions of the same plugin in the classpath. The URL "file:/Users/mmangar/projects/rga/google_sandbox/Sandbox/war/WEB-INF/lib/datanucleus-appengine-1.0.10.final.jar" is already registered, and you are trying to register an identical plugin located at URL "file:/opt/springsource-tool-suite-2.8.0.RELEASE-e3.7.1-macosx-carbon/springsource/sts-2.8.0.RELEASE/plugins/com.google.appengine.eclipse.sdkbundle_1.6.3.v201202290255r37/appengine-java-sdk-1.6.3/lib/user/orm/datanucleus-appengine-1.0.10.final.jar."
私は同じクラスが二回ロードすることしようとしていた。
それがうまく働いた私のクラスパスからJARファイルのいずれかを削除します。