从非标准布局存储库下载Maven2依赖项

时间:2010-03-01 15:04:57

标签: maven-2 repository hudson

我需要从非标准布局存储库下载文件。

标准存储库布局为groupId>/<artifactId>/<version>/<artifactId>-<version>.<packaging>但是,我需要下载以下文件:

http://hudson.myserver.com:10000/repo/ocp-services/schemas/trunk/201/archive/schemas/dist/schemas.jar

其中ocp-services实际上是groupId,schemas是artifactId,201是版本。

如何向此文件添加依赖项并将其下载到我的项目和本地存储库中?

这是一个Hudson文件存储库,如果这有任何帮助,但它是第三方很难让他们更改任何位置。

2 个答案:

答案 0 :(得分:1)

一种选择是注册自定义ArtifactRepositoryLayout实现并使用此自定义布局声明存储库。我从来没有这样做过,但应该可以,请查看blog post

第二种选择是将Maven配置为通过某种自定义代理(例如Servlet)并为此特定依赖项动态重写URL。

在这两种情况下,我担心Maven会抱怨缺少元数据(“ Maven中的依赖关系不仅仅是一个JAR文件”,请参阅3.5.5. Maven's Dependency Management)因为hudson文件存储库只是一个Maven存储库。也许这可以通过编程方式处理。但正如我所说,我从未这样做过。

第三个选择是要求项目构建您需要的deploy它(在maven意义上)。那当然是最好的解决方案。

最后一个选项是在本地存储库中手动下载此JAR和install it。如果这是一个选项,那就去吧。

答案 1 :(得分:0)

您是否尝试将此添加到您的pom.xml:

<dependencies>
            <dependency>
                <groupId>ocp-services</groupId>
                <artifactId>schemas</artifactId>
                <version>201</version>
                <type>jar</type>
            </dependency>
        </dependencies>

或者如果不起作用,Pascal表示手动安装