0


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

我尝试过但无济于事。请帮助:)

4

3 回答 3

3

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

我建议您尝试 maven 安装您拥有的其他工件。这会将它们拉入您的存储库,并且 Maven 将从那里正常工作。您可以尝试欺骗 maven,但这有点违背了使用 maven 的全部目的。

于 2013-05-10T13:42:59.837 回答
0

同意 Chris,这与 maven 的预期用法相反,但是......在你的 pom.xml 中试试这个

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

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

在该文件夹中,引用的工件应该与它们在 pom.xml 中引用的结构相同。

希望有帮助。

于 2013-05-10T15:42:16.213 回答
0

我认为在你的做事方式和 Maven 之间最好的折衷方案是依赖 Maven 的本地存储库,通常位于.m2/repository你家下的一个目录中,作为你的备份文件夹。这样,进行备份和进行部署之间的区别就相当于仅mvn install在第一种情况和mvn deploy第二种情况下使用。

使用 Maven,您可以以不同于 Maven 开发人员预期的方式来做很多事情,但是坚持 Maven 的约定要容易得多。

于 2013-05-10T13:53:14.420 回答