在Magnolia中没有更新模块版本

问题描述 投票:0回答:1

在Magnolia 5.7中没有更新模块版本的原因是什么?

在Magnolia java项目中,我在META-INFmagnoliamymodule.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>

当我在project maven pom.xml中修改了版本后重建整个项目,并部署到服务器上时,在Magnolia的Author配置控制台中看不到更新的版本,我必须手动删除配置控制台中的旧版本节点(删除JCR节点),然后重启服务器。我必须手动删除配置控制台中的旧版本节点(删除JCR节点),然后重启服务器。经过这些步骤,我可以在配置控制台中确认新版本。如果你必须部署到几个devstageprod环境中,这是一个痛苦的事情,不用说我没有访问生产环境中的公共实例。

没有更新版本的问题听起来好像并不重要,但我也没有看到与这个模块相关的新的或重命名的页面。只有当我通过删除版本强制重新加载模块时,它们才会出现。

另外一个可能有助于确定问题的细节:我可以在JCR中删除版本节点,但不能删除整个模块节点。我收到一个错误信息 "Level 1和2节点在config workpace中不能被取消发布"。

magnolia
1个回答
1
投票

你看到的是什么版本的 config:/modules/your_module/version 在您删除它之前,它是否比您试图安装的版本号低?它是否比你要安装的版本号低?我怀疑是相同或更高的版本。即你试图重新安装相同的版本或降级版本。这两种情况都不支持,因此它不会触发安装过程。或者你想从SNAPSHOT升级到完整版,而完整版也不存在安装delta。

至于当你试图删除这些节点时得到的警告,它是故意的。你不应该以普通用户的身份删除这些节点,因为你可能会导致依赖(公共)实例的损坏。只有作为管理员(通过JCR浏览器),你才被允许删除,假设你知道你在做什么和为什么这样做。

© www.soinside.com 2019 - 2024. All rights reserved.