使用来自具有datanucleus maven插件的单独模块的JDO Persistent类

我有一个使用JDO持久保存到数据库的工作应用程序 – 我想使用第二个java模块中的PersistenceCapable类。 虽然应用程序编译一个简单的测试给出了错误:

“com.hello.world.Foo”类不可持久化这意味着它要么没有被增强,要么文件的增强版本不在CLASSPATH中(或者被未增强的版本隐藏),或者Meta找不到该类的数据/注释。

好的,所以增强器插件没有在第二个模块的类上运行。 我不确定在构建期间我需要做什么才能将增强器指向该模块。

  • ParentProject
  • 第二个模块:com.hello.world.Foo

带有相关部分的ParentProject pom.xml – 问题是我如何将增强器指向包含我的持久类的第二个模块?

  Second Module Second Module 1.0-SNAPSHOT compile   javax.jdo jdo-api 3.0.1   org.datanucleus datanucleus-core [3.2.0, 3.2.99) runtime   org.datanucleus datanucleus-api-jdo [3.2.0, 3.2.99)   org.datanucleus datanucleus-rdbms [3.2.0, 3.2.99) runtime      org.datanucleus datanucleus-maven-plugin 3.3.0-release  JDO ${basedir}/datanucleus.properties ${basedir}/log4j.properties true    process-classes  enhance        

得到它 – 我必须在问题中将完全相同的pom.xml配置添加到第二个模块并执行mvn install以在编译父模块之前获得这些类enahnced。 同时使用Jetty和GAE。 我错误地认为,父模块会增强模块依赖项中包含的类。

感谢您的帮助DataNucleus!