告诉maven从maven-repo以外的目录中复制工件

时间:2013-05-10 13:24:48

标签: maven

我使用maven是一个很新的事 我使用maven作为我的构建工具。当我使用maven构建代码时,我将构建期间创建的工件(即jar和zip)复制到本地maven-repo以及另一个备份文件夹。
我使用maven从我的maven复制工件 - repo到服务器,我必须部署它们。我使用的pom会自动选择最新的工件并将它们部署在所需的服务器上。
但是,我想要做的是告诉maven有时从不同的文件夹中选择工件而不是maven-repo。 br />我试过但是没有用。请帮助:)。

3 个答案:

答案 0 :(得分:3)

从技术上讲,答案是否定的,你无法告诉maven从任意文件夹中获取工件。这是因为maven背后的整个想法是,您可以随时重现您的构建,并确切知道所有依赖项的来源。

我建议你尝试使用maven安装你拥有的其他工件。那会把它们拉进你的存储库,maven会从那里工作得很好。你可以试着欺骗maven,但这有点打败了使用maven的整个目的。

答案 1 :(得分:0)

我认为您的处理方式与Maven之间的最佳折衷方案是依靠Maven的本地存储库(通常位于您家中的.m2/repository目录中)作为备份文件夹。通过这种方式,执行备份和执行部署之间的区别仅在于第一种情况下使用mvn install而在第二种情况下使用mvn deploy

使用Maven,您可以采用与Maven开发人员预期不同的方式执行许多操作,但更容易遵守Maven的惯例。

答案 2 :(得分:0)

同意克里斯的说法,这与maven的预期使用情况相反,但...... 在你的pom.xml中试试这个

<repositories>
    <repository>
        <id>my-internal-site1</id>
        <url>file:${project.basedir}\cometrepo</url>
    </repository>
</repositories>

将网址更改为您的本地文件夹。

在文件夹中,引用的工件应与pom中引用的结构相同。

希望有所帮助。