4

在我的 Liferay 7 项目中,Service Builder 很好地生成了文件 tables.sql(带有完整的 sql),但不像 Liferay 6.2 那样在 SERVICECOMPONENT 本机 liferay 表中包含此内容。

因此,当我重新启动服务器时,数据库中没有更新,而数据模型已被修改。

我必须手动运行包含在 tables.sql 中的 sql 脚本来临时解决这个问题。

有人复制过这个吗?有没有我不知道的选项(Liferay 7 中的新选项?)会导致这种行为。

注意:当然,选项 build.auto.upgrade(在 service.properties 中)设置为 true,并且没有 service-ext.properties 可以覆盖它

4

3 回答 3

7

是的,新版本 7.0 是一件可悲的事情。社区正在等待修复。

关注并投票:https ://issues.liferay.com/browse/LPS-67688

更新

新版本 Liferay 7.0 GA5 现在执行数据库升级

于 2016-12-15T15:16:52.287 回答
7

Liferay 社区更新了帖子,在帖子中添加了步骤,

在开发应用程序时,您可以按照以下步骤强制在修改服务表时重新生成它们:

  • 为您的服务删除表格。
  • 在 release_ 表中删除您的服务的行。
  • 在 servicecomponent 表中删除您的服务所在的行。

这是 SQL 中的一个示例:

DROP TABLE LRBO_HORSE_HORSE;
DELETE FROM SERVICECOMPONENT WHERE BUILDNAMESPACE = 'LRBO_HORSE';
DELETE FROM RELEASE_ WHERE SERVLETCONTEXTNAME = 'horse-service';

点击此链接了解更多详情,

感谢 Daniele Baggio 的指点。

于 2017-02-19T18:59:05.760 回答
3

Liferay 7 中的已知错误

You need to delete entries in 
servicecomponent & release_ 
于 2017-02-20T06:34:54.090 回答