在我之前的eclipse工作项目中(在开始使用Maven之前),我有:
的src / META-INF / jdoconfig.xml
在Maven,我有:
的src /主/资源/ META-INF / jdoconfig.xml
我无法弄清楚如何告诉eclipse使用这个jdoconfig.xml文件,因此当我启动运行配置时,它运行正常,但是当我尝试执行访问本地数据存储的任何操作时:
战/ WEB-INF /应用服务引擎生成/是local_db.bin
然后我尝试运行它我得到以下错误,我不知道该怎么做才能解决它!:
引起:javax.jdo.JDOFatalUserException:一个名为的属性 必须指定javax.jdo.PersistenceManagerFactoryClass或jar 文件与META-INF / services / javax.jdo.PersistenceManagerFactory 条目必须位于类路径或名为的属性中 必须指定javax.jdo.option.PersistenceUnitName。 NestedThrowables:javax.jdo.JDOUserException:你有 为此PMF指定使用“持久性单位” “交易 - 可选”(但这不存在!)或你打电话 JDOHelper.getPersistenceManagerFactory,其中“transactions-optional”为 属性文件的名称(这在CLASSPATH中不存在) 在 javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:856)
问题在于,Appengine Eclipse插件在我们想要迁移到Maven的后台做了一些工作,准备迁移其他一些东西(到Firebase,因为Channel API已达到使用寿命)
目前我正在尝试使用org.datanucleus maven-datanucleus-plugin,它失败并显示文件名(在插件中启动datanucleus的命令中):
开启
mvn -X install这是它停止的地方: ...
[DEBUG] Executing command line: [DEBUG] cmd.exe /X /C "java -cp "C:\Users\john\.m2\repository\org\datanucleus\maven-datanucleus-plugin\3.2.0...
然后在页面上显示所有.m2内容以及项目中的所有.class文件,依此类推。
Error while executing the DataNucleus tool 'org.datanucleus.enhancer.DataNucleusEnhancer'.: Error while executing process. Cannot run program "cmd.exe": CreateProcess error=206, The filename or extension is too long -> [Help 1] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.datanucleus:maven-datanucleus-plugin:3.2.0-m1:enhance (default) on project DiaryBooker: Error while executing the DataNucleus tool 'org.datanucleus.enhancer.DataNucleusEnhancer'.
不确定这是否是datanucleus插件的预期行为(使用如此长的类路径);我甚至不确定我是否使用了正确的插件。