maven中的非常规依赖名称

时间:2012-01-05 03:53:45

标签: maven maven-2 maven-3

我有一些像这样的依赖。例如:jdic

在我的pom.xml中,我定义了一个依赖

<dependency>
<artifactId>jdic</artifactId>
<groupId>jdic</groupId>
<version>0.8.6</version>
</dependency>

我有一个远程存储库(内部服务器):例如http://repo/thirdparty/ jdic可以在http://repo/thirdparty/jdic/jar/jdic.jar

中找到

正如您所注意到的,命名不是传统的groupId:artifactId:version,而只是它的jdic.jar

所以当我运行maven编译

mvn clean compile

maven告诉我它无法解决依赖关系。 我知道我们可以将这些jar下载到本地存储库.m2 / repository并运行

mvn compile (ie without clean)

它的罐子不会有问题。但是有没有其他方法可以让它从远程检索,尽管它的非常规名称和缺少这些依赖项的元数据/ pom信息?

我已经有一个覆盖中央

的内部存储库的镜像

2 个答案:

答案 0 :(得分:0)

您可以使用版本(jdic-0.8.6.jar)在内部/镜像存储库中安装jdic。

如果您正在使用存储库管理器并且已将jar上传到它,它将自动为它创建一个pom,并确保依赖于maven会议版本创建依赖项。

答案 1 :(得分:0)

远程Maven存储库不是任何以任何您想要的方式放置文件的Web服务器。有很多惯例要遵循。其中之一是表示版本的方式(这是工件的一个基本元素)。使用“远程存储库”,很明显Maven无法找到工件。

设置真正的Maven远程存储库来托管此类文件。你可以看看Nexus和Artifactory。