我知道這有點晚了,但我一直在努力解決同樣的問題。我發現的是在完成像設置「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