如何以编程方式检索AEM/CQ5的产品版本
AEM 5.6.1 我有一个包裹。我希望能够“嗅探”用户/管理员在尝试安装软件包时使用的AEM版本 该版本在前端通过工具->Web控制台->主->产品信息提供 我很感激我能解析上面的页面并进行提取,但肯定有一种更优雅的方法可以做到这一点吗 我已经浏览了Adobe文档的软件包:(我会发布链接,但抱怨自己没有足够的声誉),并进行了一次很好的搜索 我最接近的是通过这个文档:并假设在CRX@/etc/packages/day中找到的详细信息:如何以编程方式检索AEM/CQ5的产品版本,aem,Aem,AEM 5.6.1 我有一个包裹。我希望能够“嗅探”用户/管理员在尝试安装软件包时使用的AEM版本 该版本在前端通过工具->Web控制台->主->产品信息提供 我很感激我能解析上面的页面并进行提取,但肯定有一种更优雅的方法可以做到这一点吗 我已经浏览了Adobe文档的软件包:(我会发布链接,但抱怨自己没有足够的声誉),并进行了一次很好的搜索 我最接近的是通过这个文档:并假设在CRX@/etc/packages/day中找到的详细信息: cq5 cq560 cq561 表示典型安装?产品信息存
- cq5
- cq560
- cq561
表示典型安装?产品信息存储在节点“/libs/cq/core/productinfo”上,您可以从这些节点读取信息 您没有指定在安装包时是否具有存储库访问权限。如果您希望通过HTTP将数据作为JSON,只需点击扩展名为“.JSON”的路径即可
来源:检查了chrome插件发出的网络请求当前版本的AEM通过[1]中描述的
ProductInfoService
提供此信息,该服务可返回多个ProductInfo
对象
这已在5.6.1中提供,也可通过位于/system/console/status productinfo
的OSGi控制台获得
[1] 我们可以从CRXDE中的节点“/libs/cq/core/productinfo”读取AEM产品版本
参考:要按语法检索任何正在运行的AEM实例的产品版本,可以通过以下代码段完成
@Reference
private ProductInfoProvider productInfo;
String version = productInfo.getProductInfo().getShortVersion();
首先,我们需要将ProductInfoProvider服务或定义ProductInfoProvider的引用注入到您的服务中,并使用以下函数调用获取版本信息,如下所示:
productInfo.getProductInfo().getShortVersion()谢谢@sharath回复,也很有用。特别是插件链接:)
@Reference
private ProductInfoProvider productInfo;
String version = productInfo.getProductInfo().getShortVersion();