我知道这有点晚了,但我一直在努力解决同样的问题。我发现的是在完成像设置“eclipselink.ddl-generation”之类的配置之后,然后将以下代码连接到我们的构建中,然后生成ddl文件。 EntityManagerHolder类必须在你的context.xml中定义。这有点冒险但有效。
public class EntityManagerHolder {
@PersistenceContext(type = PersistenceContextType.TRANSACTION)
private EntityManager entityManager;
protected EntityManager getEntityManager() {
return entityManager;
}
}
public class SQLGeneration {
public static void generateSQLFiles() {
ClassPathXmlApplicationContext application_context = new ClassPathXmlApplicationContext(
"META-INF" + File.separator + "spring" + File.separator
+ "context.xml");
EntityManagerHolder entity_manager_holder = (EntityManagerHolder) application_context
.getBean("entityManagerHolder");
entity_manager_holder.getEntityManager().getEntityManagerFactory()
.createEntityManager();
}
}
-1因为虽然这些配置很明确,但它们并不能解决在启动完整应用程序之前的某个时间点生成模式的实际问题。 – 2013-05-10 21:44:12