3

私が開発しているプロジェクトは Datanucleus 2.0.3 を使用しているため、拡張のためにこれらのライブラリを使用しています (モジュールの依存関係も使用するようにプラグインが構成されています)。Ubuntu 12.4 マシン上の IntelliJ バージョン 12.0.1。2.0.3 が古い歴史であることは知っていますが、少なくとも今はアップグレードするという選択肢はありません。

Gradleからはすべて正常に動作します。プロジェクトごとに IntelliJ にインポートし、junit からテストを実行すると、通常の ClassNotPersistenceCapableException が発生したため、これにはプラグインが必要であることを思い出しました。

最新のプラグインをインストールし (ベータ版と最新の安定版の両方を試しました)、この 1 つのモジュールを拡張するようにプラグインを構成しました。JDO を選択して適用すると、永続性のために注釈が付けられたすべてのクラスが検出され、プロジェクト全体を再構築し、テストを再度実行すると、同じエラーが発生します。

私が気づいた/チェックしたいくつかのこと: - Enchaner は "Build / Datanucleus Enhancer" でチェックされています - 複数の datanucleus jar を探しましたが、1 つしかありません - イベント ログの IntelliJ で、完了したというメッセージは見られませんでした拡張 (gradle エンハンサーはそのようなメッセージをログに記録します) - IntelliJ で拡張が失敗したことを示すエラー メッセージを見たことがありません。また、IntelliJ の外部にログ ファイルが見つかりませんでした (何かあるはずですか?) - 手動でビルドされた gradle を追加したときテストに合格したテストのクラスパスの先頭にあるクラス - しかし、これは良くありません - モジュールには、クラスパスに次の datanucleus 2.0.3 jar があります: datanucleus-core、datanucleus-enhancer、datanucleus-connectionpool、datanucleus-rdbms およびasm-3.1.jar (依存関係は 3.0-4.0 であると言っているので、これが適合するはずです)

なぜそれがクラスを認識しているのにそれらを強化しないのか、または試みて静かに失敗するのか、私にはわかりません...しかし、問題を診断する方法がわかりません

他のアイデアは頭に浮かびません。何を確認するか、何を試すかをアドバイスしてください。

4

0 に答える 0