我是新手。我仍然无法掌握它的概念。
例如,我正在寻找 com.extjs:gxt:jar:2.2.5 或 org.syslog4j:syslog4j:jar:0.9.46。我在任何回购中都找不到它们。然而,它们似乎相当普遍。
这是否意味着我必须手动下载它们?它不是打败了 maven 的整个想法吗?
我在哪里可以找到一个包含所有这些工件的好的存储库,这样我就不需要手动下载 jars 了?
使用 maven 时我做错了什么,这绝对不是要走的路……
我是新手。我仍然无法掌握它的概念。
例如,我正在寻找 com.extjs:gxt:jar:2.2.5 或 org.syslog4j:syslog4j:jar:0.9.46。我在任何回购中都找不到它们。然而,它们似乎相当普遍。
这是否意味着我必须手动下载它们?它不是打败了 maven 的整个想法吗?
我在哪里可以找到一个包含所有这些工件的好的存储库,这样我就不需要手动下载 jars 了?
使用 maven 时我做错了什么,这绝对不是要走的路……
你没有做错什么。问题是这些工件不存在于Maven 中央存储库中。默认情况下,这是 Maven 将从中下载的唯一存储库。您可以添加其他存储库(请参阅 maven 文档)来配置未自动镜像到中央的存储库。
正如@Michael 所说,你没有做错任何事。
默认的 Maven 中央存储库不会提供地球上所有可能的工件。
通常你可以有两种方法来解决它:
1)您使用的工件可能由某些组织提供,他们提供自己的存储库来托管这些工件。告诉 Maven 查找这些存储库,以便 Maven 可以检索相应的工件。
或者
2)获取JAR等并放入您的本地环境。
上述工作有两种最常用的方式:
A) 拥有一个“本地”maven 存储库/代理(例如 Nexus、Artifactory),并使您的 Maven 指向该存储库。添加新的远程存储库 (1) 主要是通过在本地 Maven 存储库下向代理添加额外的存储库来完成的。通过将 JAR 部署到本地存储库来手动处理第 3 方工件 (2)。
B) 全部由您当地的 Maven 在本地完成。通过更新 settings.xml(或您的项目 POM.xml)来添加新的远程仓库 (1)。通过将 3rd 方 JAR 安装到本地存储库来手动处理 3rd 方工件 (2)。
您可以使用
<dependency>
<groupId>com.extjs</groupId>
<artifactId>gxt</artifactId>
<version>2.3.0-gwt22</version>
</dependency>