3

我正在开发的项目使用 Datanucleus 2.0.3,因此我使用这些库进行增强(插件也配置为使用模块依赖项)。Ubuntu 12.4 机器上的 IntelliJ 版本 12.0.1。我知道 2.0.3 是古老的历史,但至少现在升级它对我来说不是一个选择。

从 gradle 开始一切正常。我按项目导入 IntelliJ,当我从 junit 运行测试时,我得到了通常的 ClassNotPersistenceCapableException,所以我记得我需要一个插件。

我安装了最新的插件(尝试了 beta 和最后一个稳定版本)并配置了插件来增强我的这个模块。我选择了 JDO 并应用了它,它发现了所有为持久性注释的类,我重建了整个项目,再次运行测试并出现同样的错误。

我注意到/检查了一些事情: - Enchaner 在“Build / Datanucleus Enhancer”中打勾 - 寻找多个 datanucleus jar,但只有一个 - 在事件日志中的 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