【发布时间】:2014-08-01 08:44:44
【问题描述】:
我正在使用应用引擎后端构建一个 android 应用程序。但是要将实体插入数据存储区,我无法获取 entitymanagefactoy(EMF) 实例,因为它会引发 NoClassDefFound 错误。我已经尝试了之前问题中建议的几乎所有解决方案。
Eclipse 版本:4.2.0 使用 Jre7 并使用 apengine-java-sdk-1.8.8
谷歌插件生成的EMF类:
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
public final class EMF {
private static final EntityManagerFactory emfInstance = Persistence.createEntityManagerFactory("transactions-optional");
private EMF() {
}
public static EntityManagerFactory get() {
return emfInstance;
}
}
persistence.xml:
<?xml version="1.0" encoding="UTF-8" ?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" version="1.0">
<persistence-unit name="transactions-optional">
<provider>org.datanucleus.api.jpa.PersistenceProviderImpl</provider>
<properties>
<property name="datanucleus.NontransactionalRead" value="true"/>
<property name="datanucleus.NontransactionalWrite" value="true"/>
<property name="datanucleus.ConnectionURL" value="appengine"/>
</properties>
</persistence-unit>
</persistence>
【问题讨论】:
标签: android google-app-engine jpa