使用maven单独的本地下载和安装存储库?

use*_*755 6 repository maven

我想时不时地从头开始重建我的项目结构,并希望清除构建的存储库来做到这一点。但是,我不想从 Maven 中心和其他存储库中删除下载的文件。有没有一种简单的方法告诉 Maven 将我构建的工件安装到单独的存储库中,即 那么还有一个用于存储下载的外部文件的呢?

不是在谈论deploy,只是mvn install

更新

我找到了一种替代解决方案,仅使用一个本地存储库来存储下载的和自建的工件:自建的工件附带名为“maven-metadata-local.xml”的文件,因此我根据以下内容选择要清除的存储库目录该文件现在存在...

Tun*_*aki 3

你不能带着install目标做到这一点。maven-install-plugin会将工件安装到用于从中获取下载工件的同一本地存储库。默认情况下,这是${user.home}/.m2/repository. 您可以通过将系统变量设置到另一个位置(或告诉 Maven 使用特定的)来更改它。然而,目前,Maven 无法配置为将特定工件安装到与获取下载工件的位置不同的本地存储库中。maven.repo.localsettins.xml

一种可能的解决方法是声明目标的执行install-file,绑定到install阶段并声明它将所有您想要的工件安装到指定的本地存储库。

<plugin>
    <artifactId>maven-install-plugin</artifactId>
    <version>2.5.2</version>
    <executions>
        <execution>
            <phase>install</phase>
            <goals>
                <goal>install-file</goal>
            </goals>
            <configuration>
                <file><!-- path to artifact to install --></file>
                <pomFile><!-- path to POM of artifact --></pomFile>
                <localRepositoryPath><!-- path to repository you want to install to --></localRepositoryPath>
            </configuration>
        </execution>
    </executions>
</plugin>
Run Code Online (Sandbox Code Playgroud)