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