Magnolia 中未更新模块版本
Not updated module version in Magnolia
Magnolia 5.7 中未更新模块版本的可能原因是什么
在 Magnolia java 项目中,我在 META-INF/magnolia/mymodule 中有带有 XML 描述符的子模块。xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module SYSTEM "module.dtd" >
<module>
<name>mymodule</name>
<displayName>mymodule</displayName>
<description>my module</description>
<version>${project.version}</version>
<!-- <version>1.3</version> -->
<dependencies>
<dependency>
<name>core</name>
<version>5.7.4/*</version>
</dependency>
</dependencies>
</module>
当我在项目 Maven pom.xml 中使用更改的版本重建整个项目并部署到服务器上时,我在 Magnolia 的 Author 配置控制台中看不到更新的版本。我必须在配置控制台中手动删除旧版本节点(删除 JCR 节点),然后重新启动服务器。完成这些步骤后,我可以在配置控制台中确认新版本。如果您必须部署到多个 dev/stage/prod 环境,这很痛苦,不用说我无法访问生产环境中的 public 实例。
未更新版本的问题听起来并不重要,但我也没有看到与此模块关联的新页面或重命名页面。它们仅在我通过删除版本强制重新加载模块时出现。
一个可能有助于识别问题的附加细节:我可以删除 JCR 中的版本节点,但不能删除整个模块节点。我收到一条错误消息 "Level 1 and 2 nodes in config workspace cannot be unpublished"。
在删除之前,您在 config:/modules/your_module/version
中看到的是什么版本?它是否低于您要安装的版本号?我怀疑它相同或更高。即您正在尝试重新安装相同版本或降级版本。这些都不支持,因此它不会触发安装过程。或者,也许您正在尝试从 SNAPSHOT 升级到没有安装增量的完整版本。
至于您在尝试删除这些节点时收到的警告,这是故意的。您不应该以普通用户的身份删除这些节点,因为您可能会导致相关 (public) 实例的损坏。只有作为管理员(通过 JCR 浏览器),您才可以删除,前提是您知道自己在做什么以及为什么要这样做。
Magnolia 5.7 中未更新模块版本的可能原因是什么
在 Magnolia java 项目中,我在 META-INF/magnolia/mymodule 中有带有 XML 描述符的子模块。xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module SYSTEM "module.dtd" >
<module>
<name>mymodule</name>
<displayName>mymodule</displayName>
<description>my module</description>
<version>${project.version}</version>
<!-- <version>1.3</version> -->
<dependencies>
<dependency>
<name>core</name>
<version>5.7.4/*</version>
</dependency>
</dependencies>
</module>
当我在项目 Maven pom.xml 中使用更改的版本重建整个项目并部署到服务器上时,我在 Magnolia 的 Author 配置控制台中看不到更新的版本。我必须在配置控制台中手动删除旧版本节点(删除 JCR 节点),然后重新启动服务器。完成这些步骤后,我可以在配置控制台中确认新版本。如果您必须部署到多个 dev/stage/prod 环境,这很痛苦,不用说我无法访问生产环境中的 public 实例。
未更新版本的问题听起来并不重要,但我也没有看到与此模块关联的新页面或重命名页面。它们仅在我通过删除版本强制重新加载模块时出现。
一个可能有助于识别问题的附加细节:我可以删除 JCR 中的版本节点,但不能删除整个模块节点。我收到一条错误消息 "Level 1 and 2 nodes in config workspace cannot be unpublished"。
在删除之前,您在 config:/modules/your_module/version
中看到的是什么版本?它是否低于您要安装的版本号?我怀疑它相同或更高。即您正在尝试重新安装相同版本或降级版本。这些都不支持,因此它不会触发安装过程。或者,也许您正在尝试从 SNAPSHOT 升级到没有安装增量的完整版本。
至于您在尝试删除这些节点时收到的警告,这是故意的。您不应该以普通用户的身份删除这些节点,因为您可能会导致相关 (public) 实例的损坏。只有作为管理员(通过 JCR 浏览器),您才可以删除,前提是您知道自己在做什么以及为什么要这样做。