在aem中卸载软件包后,我对felix控制台中的osgi bundle版本有疑问。构建计划是使用构建版本(如1.13.1然后1.13.2等)逐步安装软件包。
如果安装了包package-1.13.4.zip
;它有一个包bundle-1.13.4.jar
卸载package-1.13.4.zip
后;按照我的理解; bundle-1.13.4.jar
应从apps/myproject/install
以及felix控制台中移除;应该在felix控制台中安装的软件包应该是bundle-1.13.3.jar
;因为它是在1.13.4之前安装的版本
但是当我卸载package-1.13.4.zip
时; bundle-1.13.4.jar
都不会从apps/myproject/install
中移除,也不会从felix控制台中删除bundle-1.13.4.jar
。我的理解有问题吗?
答案 0 :(得分:2)
这里可能存在几个问题:
1)检查您的软件包是否在筛选器列表中包含/ apps / myproject / install。如果路径/ apps / myproject / install位于程序包的筛选器列表中,则卸载程序包package-1.13.4.zip将仅删除bundle bundle-1.13.4.jar。
2)检查部署脚本。可能存在使用JCRInstaller未安装捆绑包的情况。只有在使用/ apps / myproject / install安装捆绑包时才会卸载捆绑包。如果您的jenkins / maven脚本已使用felix控制台或/ system / console /直接安装了您的软件包,则卸载pacakge将不会卸载该软件包。
如果您想确保在卸载软件包时还要卸载软件包,请执行以下操作:
1)使用Maven sling插件 - 这将确保您的软件包安装在/ apps //安装。
2)确保您的部署脚本正在/ apps //安装捆绑包并直接上传到felix控制台。
答案 1 :(得分:0)
卸载package-1.13.4.zip后;按照我的理解;应该从apps / myproject / install以及felix控制台中删除bundle-1.13.4.jar;应该在felix控制台中安装的bundle应该是bundle-1.13.3.jar;因为它是在1.13.4之前安装的版本
卸载捆绑包不会在felix控制台中恢复其先前版本,并且它随时只维护捆绑包的一个版本。此外,构建安装旧版本不会替换现有的更高版本安装。如果SNAPSHOT已从版本名称中删除,则无法在卸载后进行构建 - 安装。