Liferay启动事件解释

Liferay startup events explanation

1) 我试图创建一个门户启动挂钩,并覆盖了一个启动操作。 application.startup.events 描述中的措辞有点含糊:它说此事件针对每个初始化的门户网站实例运行一次。 'web site instance of the portal' 是否与 'portal' 实例相同?

2) 每当我重新部署挂钩时,都会调用我的应用程序启动事件操作。这是否意味着门户实例重新初始化?如果是这样,为什么我重新部署其他插件时不会观察到相同的行为? (当我重新部署其他插件时,不会调用启动事件操作)

3) 当我尝试在挂钩中覆盖 global.startup.events 而不是 application.startup.events 时,我的启动操作从未被调用(我在启动方法中插入了一些打印语句并重新启动了服务器)。如何解释这种行为?

如果您只回答部分问题,我将不胜感激,因为它仍然对我和可能对社区有益。 提前致谢

挂钩部署为 Web 应用程序。因此,当部署挂钩时,将触发一个 application.startup.events 配置的操作。据我所知,它将使用所有可用的实例 ID 调用(技术上 companyId)。文档中的措辞似乎很不幸。然而,由于所有 Web 应用程序都相互独立部署,因此这是可用的最大努力。如果您更新挂钩代码并重新部署它,您可能想要 运行 更改的启动事件。

global.startup.events can not be configured in a hook,因此您看不到 activity - 它被严格忽略。