我正在使用app引擎后端构建一个Android应用程序。但是为了将实体插入数据存储区,我无法获得entitymanagefactoy(EMF)实例,因为它抛出了NoClassDefFound Error.I已经尝试了几乎所有早期问题中建议的解决方案。 / p>
Eclipse版本:4.2.0 使用Jre7 并使用apengine-java-sdk-1.8.8
Google插件生成的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>
答案 0 :(得分:0)
您是否在java构建路径中标记了依赖项 - &gt;订单和出口? 此外,我有类似的问题,第三个库需要自己的依赖已经由eclipse解决,但在运行时没有工作,因为它们包含在主项目而不是库本身。