gpt4 book ai didi

maven - Liferay 版本和正确的依赖关系

转载 作者:行者123 更新时间:2023-12-02 19:53:32 25 4
gpt4 key购买 nike

我对 Liferay、Maven 和 Java 相当陌生,所以这可能是一个关于依赖关系的一般性问题。我正在维护一个已从 6.2 迁移到 7.1 的 Liferay portlet,并且有许多带有版本号的 Liferay maven 依赖项(例如 com.liferay.portal.kernel)。

人们如何知道这些依赖项的哪些版本用于他们正在使用的产品版本?

这是一种典型情况,即使产品版本落后于次要版本,人们也应该始终尝试使用最新版本的依赖项?

最佳答案

要确保再次编译目标环境中的 JAR 版本,最简单的方法可能是使用相应的 BOM( Material list )。

你可以看看这个code sample's POM for Liferay Portal 7.2例如。请注意指示要使用哪个 BOM 的 dependencyManagement:

    <dependencyManagement>
<dependencies>
<dependency>
<groupId>com.liferay.portal</groupId>
<artifactId>release.portal.bom</artifactId>
<version>${portal.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>

然后请注意 com.liferay.portal.kernel JAR 的实际依赖项没有指定版本。

        <dependency>
<groupId>com.liferay.portal</groupId>
<artifactId>com.liferay.portal.kernel</artifactId>
</dependency>

JAR 版本将从 BOM 中获取,确保它与给定版本的 Liferay Portal 包含的版本相匹配。

为了进行比较,这里是 exact same POM but for Liferay Portal 7.1 。正如您所看到的,唯一的区别是 portal.version 属性。

关于maven - Liferay 版本和正确的依赖关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57634320/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com