gpt4 book ai didi

java - 将一个 Maven 项目添加到另一个 Maven 项目中导致无法解析依赖项错误

转载 作者:行者123 更新时间:2023-12-01 09:11:17 25 4
gpt4 key购买 nike

我有两个项目。ABC 和 XYZ 。我需要的是在 XYZ 中获取 ABC 类

为此,我将 ABC 的依赖项添加到 XYZ 中,并在 Eclipse 中清理了 mvn。有效!

但是当我执行 mvn clean install 时,它显示

Failed to execute goal on project XYZ: Could not resolve dependencies
Failure to find ABC-SERVER:ABC:jar:Server in https://repo.maven.apache.org/maven2 was cached in the local repository.

这是我的 pomABC 的 pom.xml:

<groupId>abc-server</groupId>
<artifactId>ABCServer</artifactId>
<name>ABCServer</name>
<version>Server</version>
<packaging>war</packaging>

XYZ 的 pom.xml:

<dependency>
<groupId>abc-server</groupId>
<artifactId>ABCServer</artifactId>
<version>Server</version>
</dependency>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>${java.version}</source>
<target>${java.version}</target>
<compilerArgument>-Xlint:all</compilerArgument>
<showWarnings>true</showWarnings>
<showDeprecation>true</showDeprecation>

</configuration>
</plugin>
</plugins>

有什么方法可以做到这一点。我需要从 Windows 命令行运行 mvn clean package。

任何帮助将不胜感激。

最佳答案

查看错误消息:

Failure to find ABC-SERVER:ABC:jar:Server

显然,它永远不会找到该依赖项,因为不存在这样的 Artifact 。您的 ABC-SERVER 被打包为 war 。

您可以通过添加 <type>war</type> 使其正确解决依赖关系到 XYZ 的依赖关系,但如果 XYZ 也是一场 war ,这可能不是您想要的。 Maven 将覆盖 XYZ war 上的 ABC-SERVER war (有关更多详细信息,请参阅 https://maven.apache.org/plugins/maven-war-plugin/overlays.html)。

如果您只想重用 ABC-SERVER Web 应用程序中的,我认为正确的方法是将这些类分离到一个新的 jar Artifact 中,并在两个 Web 应用程序中使用它。

关于java - 将一个 Maven 项目添加到另一个 Maven 项目中导致无法解析依赖项错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40909144/

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