Java Junit EntityManager NullPointerException与App Engine 1.7升级

Java Junit EntityManager NullPointerException与App Engine 1.7升级,java,google-app-engine,Java,Google App Engine,在我的项目中,我有许多JUnit测试来测试我的数据存储服务。在过去的两年中,它们工作得很好,我能够通过单元测试成功地插入、查询和删除实体。几天前,我升级到AppEngine1.7,突然我所有的测试都抛出一个NullPointerException,因为 createEntityManagerFactory(“事务可选”)返回null。我的persistence.xml文件包含以下配置,正如我所说的,在升级之前,这些配置一直运行良好 <persistence-unit name="trans

在我的项目中,我有许多JUnit测试来测试我的数据存储服务。在过去的两年中,它们工作得很好,我能够通过单元测试成功地插入、查询和删除实体。几天前,我升级到AppEngine1.7,突然我所有的测试都抛出一个NullPointerException,因为

createEntityManagerFactory(“事务可选”)返回null。我的persistence.xml文件包含以下配置,正如我所说的,在升级之前,这些配置一直运行良好

<persistence-unit name="transactions-optional">
    <provider>org.datanucleus.store.appengine.jpa.DatastorePersistenceProvider</provider> 
    <properties> 
        <property name="datanucleus.NontransactionalRead" value="true"/> 
        <property name="datanucleus.NontransactionalWrite" value="true"/> 
        <property name="datanucleus.ConnectionURL" value="appengine"/> 
    </properties> 
</persistence-unit>

org.datanucleus.store.appengine.jpa.DatastorePersistenceProvider

此外,我还浏览了GAE测试设置文章,我的类路径上有所有必需的jar文件。知道升级过程中会发生什么变化吗?

看起来这是Eclipse或Google Eclipse插件的问题。在项目>属性中,检查了GAE设置。我甚至检查和取消检查它,以确保它是打开的。事实上,运行和调试模式可以很好地工作,但是JUnit测试会失败。我只是再次尝试修复这个问题,我注意到尽管选中了Google设置中的复选框,但Java路径中仍然缺少GWT和GAE库。非常奇怪,但是现在Junit测试工作了

你能发布完整的堆栈跟踪吗?不幸的是,没有真正的堆栈跟踪可打印。下面是失败的确切代码:NullPointerException:EntityManager EntityManager=EMF.get().createEntityManager();显然,空指针来自EMF.get(),它在内部调用Persistence.createEntityManagerFactory(“事务可选”)。