Esquema programáticoExport / SchemaUpdate com Hibernate 5 e Spring 4

Com o Spring 4 e o Hibernate 4, pude usar o Reflection para obter o objeto Hibernate Configuration do ambiente atual, usando este código:

@Autowired LocalContainerEntityManagerFactoryBean lcemfb;

EntityManagerFactoryImpl emf = (EntityManagerFactoryImpl) lcemfb.getNativeEntityManagerFactory();
SessionFactoryImpl sf = emf.getSessionFactory();
SessionFactoryServiceRegistryImpl serviceRegistry = (SessionFactoryServiceRegistryImpl) sf.getServiceRegistry();
Configuration cfg = null;

try {
    Field field = SessionFactoryServiceRegistryImpl.class.getDeclaredField("configuration");
    field.setAccessible(true);
    cfg = (Configuration) field.get(serviceRegistry);
} catch (NoSuchFieldException | SecurityException | IllegalArgumentException | IllegalAccessException e) {
    e.printStackTrace();
}

SchemaUpdate update = new SchemaUpdate(serviceRegistry, cfg);

Com o Hibernate 5, devo usar algunsMetadataImplementor, que parece não estar disponível em nenhum desses objetos. Eu também tentei usarMetadataSources com oserviceRegistry. Mas ele disse que é o tipo errado deServiceRegistry.

Existe alguma outra maneira de fazer isso funcionar?

questionAnswers(4)

yourAnswerToTheQuestion