pom 中的 CMS Magnolia magnolia-rest-content-delivery 版本

Posted

技术标签:

【中文标题】pom 中的 CMS Magnolia magnolia-rest-content-delivery 版本【英文标题】:CMS Magnolia magnolia-rest-content-delivery version in pom 【发布时间】:2018-02-27 20:32:18 【问题描述】:

我需要在 Maven 中安装 magnolia-rest-content-delivery 模块。

在安装此模块之前,我有以下依赖项。项目的构建和安装没有问题。

问题:如何在 magnolia 项目中不定义依赖版本?

第一次尝试安装没有版本,就像组 info.magnolia.rest 中的其他人一样

这会导致 info.magnolia.rest:magnolia-rest-content-delivery:jar 的错误 `[ERROR] 'dependencies.dependency.version' 丢失。``

问题:magnolia-rest-content-delivery 有什么特别之处所以需要版本?

第二次尝试 - 将版本添加到

在部署过程中导致错误

Module Magnolia REST Content Delivery (version 2.0.1) is dependent on rest-integration (version 2.0.1/*),
but Magnolia REST Integration (version 1.2.1) is currently installed.
第三次尝试:将相同版本添加到info.magnolia.rest groupId 中的所有依赖项

在部署过程中导致同样的错误

Module Magnolia REST Content Delivery (version 2.0.1) is dependent on rest-integration (version 2.0.1/*), 
but Magnolia REST Integration (version 1.2.1) is currently installed.

接下来我可以尝试什么来解决问题? 谢谢。

更新: 项目的 pom 依赖于 magnolia-enterprise-bundle-parent v#5.5.4

在依赖树中我可以看到 magnolia-rest-integration 选择了 1.2.1 版本

什么是覆盖 BOM 中定义的版本的安全方法?

更新 2:

我最终在dependencyManagement部分覆盖了依赖版本

清理本地maven仓库并构建

尽管有效的 pom 现在显示 magnolia rest 模块的正确版本,但结果几乎相同

[ERROR] Module Magnolia REST Tools (version 2.0.1) is dependent on rest-integration (version 2.0.1/*), 
but Magnolia REST Integration (version 1.2.1) is currently installed.
[ERROR] Module Magnolia REST Content Delivery (version 2.0.1) is dependent on rest-integration (version 2.0.1/*), 
but Magnolia REST Integration (version 1.2.1) is currently installed.

我无法附加依赖树输出文件(这里是一小段摘录)

[INFO] +- info.magnolia.eebundle:magnolia-enterprise-standard-webapp:war:5.5.4:compile
[INFO] +- info.magnolia.rest:magnolia-rest-integration:jar:2.0.1:compile
[INFO] |  +- info.magnolia.core:magnolia-configuration:jar:5.5.4:compile
[INFO] |  |  \- org.atteo:evo-inflector:jar:1.2.1:compile
[INFO] |  +- javax.xml.bind:jaxb-api:jar:2.2:compile
[INFO] |  |  \- javax.xml.stream:stax-api:jar:1.0-2:compile
[INFO] |  +- org.jboss.resteasy:resteasy-jaxrs:jar:3.0.19.SP1-redhat-1:compile
[INFO] |  |  +- org.jboss.spec.javax.annotation:jboss-annotations-api_1.2_spec:jar:1.0.0.Final-redhat-1:compile
[INFO] |  |  \- org.jboss.logging:jboss-logging:jar:3.3.0.Final-redhat-1:compile
[INFO] |  +- org.jboss.resteasy:resteasy-jackson2-provider:jar:3.0.19.SP1-redhat-1:compile
[INFO] |  |  +- com.fasterxml.jackson.core:jackson-core:jar:2.8.6:compile
[INFO] |  |  \- com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider:jar:2.8.6:compile
[INFO] |  |     +- com.fasterxml.jackson.jaxrs:jackson-jaxrs-base:jar:2.8.6:compile
[INFO] |  |     \- com.fasterxml.jackson.module:jackson-module-jaxb-annotations:jar:2.8.6:compile
[INFO] |  +- org.jboss.resteasy:resteasy-jaxb-provider:jar:3.0.19.SP1-redhat-1:compile
[INFO] |  +- javax.ws.rs:javax.ws.rs-api:jar:2.0:compile
[INFO] |  \- com.google.guava:guava:jar:18.0:compile
[INFO] +- info.magnolia.rest:magnolia-rest-services:jar:2.0.1:compile
[INFO] |  +- com.fasterxml.jackson.core:jackson-annotations:jar:2.8.0:compile
[INFO] |  +- io.swagger:swagger-annotations:jar:1.5.4:compile
[INFO] |  +- org.apache.jackrabbit:jackrabbit-jcr-commons:jar:2.12.4:compile
[INFO] |  +- commons-codec:commons-codec:jar:1.10:compile
[INFO] |  +- org.jboss.resteasy:resteasy-jackson-provider:jar:3.0.19.SP1-redhat-1:compile
[INFO] |  |  +- org.codehaus.jackson:jackson-core-asl:jar:1.9.12:compile
[INFO] |  |  +- org.codehaus.jackson:jackson-mapper-asl:jar:1.9.12:compile
[INFO] |  |  +- org.codehaus.jackson:jackson-jaxrs:jar:1.9.12:compile
[INFO] |  |  \- org.codehaus.jackson:jackson-xc:jar:1.9.12:compile
[INFO] |  \- org.jboss.resteasy:resteasy-client:jar:3.0.19.SP1-redhat-1:compile
[INFO] +- info.magnolia.rest:magnolia-rest-tools:jar:2.0.1:compile
[INFO] |  +- io.swagger:swagger-jaxrs:jar:1.5.4:compile
[INFO] |  |  +- com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:jar:2.8.6:compile
[INFO] |  |  +- com.fasterxml.jackson.dataformat:jackson-dataformat-xml:jar:2.8.6:compile
[INFO] |  |  |  +- org.codehaus.woodstox:stax2-api:jar:3.1.4:compile
[INFO] |  |  |  \- com.fasterxml.woodstox:woodstox-core:jar:5.0.3:compile
[INFO] |  |  \- io.swagger:swagger-core:jar:1.5.4:compile
[INFO] |  |     +- com.fasterxml.jackson.datatype:jackson-datatype-joda:jar:2.8.6:compile
[INFO] |  |     \- javax.validation:validation-api:jar:1.1.0.Final:compile
[INFO] |  \- io.swagger:swagger-models:jar:1.5.4:compile
[INFO] +- info.magnolia.rest:magnolia-rest-content-delivery:jar:2.0.1:compile
[INFO] |  +- javax.json:javax.json-api:jar:1.0:compile
[INFO] |  +- org.glassfish:javax.json:jar:1.0:compile
[INFO] |  \- org.apache.jackrabbit:jackrabbit-spi-commons:jar:2.12.4:compile
[INFO] |     \- org.apache.jackrabbit:jackrabbit-spi:jar:2.12.4:compile

这个mistic“Magnolia REST Integration(1.2.1版)”提到的唯一地方是:

.m2\repository\info\magnolia\bundle\magnolia-bundle-parent\5.5.4\magnolia-bundle-parent-5.5.4.pom

【问题讨论】:

【参考方案1】:

rest 的版本号来自您最有可能扩展的父 pom,或者来自您导入的 Magnolia CE 或 EE webapp 的依赖项部分,或者来自 BOM。没有办法说没有看到整个 pom。至于内容交付的特别之处 - 它没有在其他模块的版本“源”中定义,因此您需要明确声明它。 从错误来看,您很可能最终在您的 web 应用程序中使用了两个版本的人工制品,或者版本没有被拾取(即您的 pom 中的一些错误)。您根本不需要声明 magnolia-rest-integration,因为它应该被 magnolia-rest-content-delivery-services-tools 模块拉入。

请包含指向整个 pom 的链接。还请提供运行mvn dependency:tree 的输出以准确指出问题所在。

【讨论】:

谢谢 1 月 1 日)你说得对,我可以排除休息整合。 2)项目的 pom 依赖于 magnolia-enterprise-bundle-parent v#5.5.4。我已经更新了原帖。 试图覆盖依赖版本。在原始帖子中更新。谢谢。 Alexei 请在 pastebin.com 或 gist 上发布依赖树的整个输出,然后将其链接到此处。在没有看到整个输出的情况下,我们无法弄清楚依赖项来自哪里。您的摘录仅表明它不是来自预期的休息模块。谢谢。 试图重现您的问题,但一切正常 - 请参阅父 pom:gist.github.com/rah003/30c6a52749563c7f5774a6a66c89ca34 和 war 文件 pom:gist.github.com/rah003/85ba9d73703aec29f6eb7efaafbb511d 嗨 Jan。我意识到 Magnolia 5.5.4。有 Rest 版本 1.2.1 并且没有提及内容交付模块支持。谢谢。

以上是关于pom 中的 CMS Magnolia magnolia-rest-content-delivery 版本的主要内容,如果未能解决你的问题,请参考以下文章

Magnolia cms 中的并发会话

Magnolia CMS 5 中的模板文件夹

从 Magnolia CMS 中的内容生成 PDF

自定义操作实施 Magnolia CMS

Magnolia CMS 中的节点创建

Magnolia CMS 中的 RichText 正在更改 HTML 文本