gpt4 book ai didi

Maven 无法解析我可以在存储库中看到的 jar

转载 作者:行者123 更新时间:2023-12-02 02:01:52 24 4
gpt4 key购买 nike

我在我的 pom.xml 中指定了 wicket 版本 1.5-RC7。当我执行 mvn install 时,它会提示: The following artifacts could not be resolved: org.apache.wicket:wicket:jar:1.5-RC7, javax.transaction:jta:jar: 1.0.1B。所以我尝试在 mvnrepository.com 上搜索 javax.transaction.jta-1.0.1B.jar,我能够找到它。为什么 Maven 告诉我它无法解析 avax.transaction:jta:jar:1.0.1B?

我的 pom.xml:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

<repositories>
<repository>
<id>mvnrepository</id>
<url>http://repo1.maven.org/maven2</url>
</repository>
</repositories>

<dependencies>
<!-- WICKET DEPENDENCIES -->
<dependency>
<groupId>org.apache.wicket</groupId>
<artifactId>wicket</artifactId>
<version>${wicket.version}</version>
</dependency>
<dependency>
<groupId>org.apache.wicket</groupId>
<artifactId>wicket-spring</artifactId>
<version>${wicket.version}</version>
</dependency>

<dependency>
<groupId>org.apache.wicket</groupId>
<artifactId>wicket-extensions</artifactId>
<version>${wicket.version}</version>
</dependency>

</dependencies>
</build>
<properties>
<wicket.version>1.5-RC7</wicket.version>
...
</properties>
</project>

最佳答案

首先,http://repo1.maven.org/maven2是 Maven 将查找的默认值。您无需再次声明。

当你构建时,你能检查一下你的 Maven 正在尝试连接哪个服务器吗?您应该会看到类似 Downloading: http://whatever.com/path/to/dependencies.pom 的内容.

我刚刚检查了 maven 中央仓库,没有 org.apache.wicket:wicket:1.5-RC7。你最好检查一下你是否声明了正确的依赖

对于JTA来说,有点棘手。对于相当多的 Java 规范 JAR,由于许可问题,实际的 JAR 在公共(public)中央 Maven 存储库中不可用。如果你看http://search.maven.org/#artifactdetails|javax.transaction|jta|1.0.1B|jar ,您会看到它只包含 POM,而不包含 JAR。

有一些方法可以解决:

  1. 如果您在自己的公司有 Maven 存储库,请考虑从 Sun/Oracle 获取 JAR,然后自行部署
  2. 对于 JTA 规范本身,JAR 可用于较新的版本 (1.1)。检查您是否可以使用后一种规范
  3. 改用 Geromino 规范。它应该兼容。 http://search.maven.org/#search|gav|1|g%3A%22geronimo-spec%22%20AND%20a%3A%22geronimo-spec-jta%22

编辑

我在之前的搜索中错过了 wicket 1.5-RC7。对不起。查看 POM 后,它似乎不是 JAR POM。 org.apache.wicket:wicket:1.5-RC7类型为 POM , 其中声明依赖于 wicket-core神器。

你有两种方法:

  1. 更改您的依赖项以指向 wicket-core (也许还有其他 Wicket 口模块)而不是 wicket .
  2. 将依赖声明更改为<type>pom</type> (因为默认是 jar )

我不熟悉 Wicket,但我认为方法 1 是首选。

关于Maven 无法解析我可以在存储库中看到的 jar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16848447/

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