首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用pom中的maven-install-plugin将外部库导入本地存储库

使用pom中的maven-install-plugin将外部库导入本地存储库
EN

Stack Overflow用户
提问于 2020-03-18 03:22:47
回答 1查看 136关注 0票数 1

我的问题是,我希望自动将一个外部库导入到用户的本地maven存储库中。

下面是我如何使用maven-install-plugin让它工作:

代码语言:javascript
复制
       <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-install-plugin</artifactId>
            <version>2.5.2</version>
            <executions>
                <execution>
                    <id>install-external</id>
                    <phase>clean</phase>
                    <configuration>
                        <file>${basedir}/myjar.jar>
                        <repositoryLayout>default</repositoryLayout>
                        <groupId>mygroupid</groupId>
                        <artifactId>myartefactid</artifactId>
                        <version>myversion</version>
                        <packaging>jar</packaging>
                        <generatePom>true</generatePom>
                    </configuration>
                    <goals>
                        <goal>install-file</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

但是在pom中,为了让它工作,我必须在两个不同的命令中执行:

代码语言:javascript
复制
mvn clean 
mvn install

如果我只是在运行

代码语言:javascript
复制
 mvn clean install

它不能在安装阶段解决我的依赖(除非我单独做了一个mvn清理,当然也没有清理本地存储库)。Clean似乎只在我单独运行'mvn clean‘时才调用插件。

我想要的是在运行'mvn install‘时自动导入我的依赖项。或者至少在一个命令中运行'mvn clean install‘的时候。

EN

回答 1

Stack Overflow用户

发布于 2020-03-18 17:33:54

您的解决方案不能只使用一个Maven命令。

如果你用mvn something启动Maven,依赖关系会首先被解析,所以你在构建过程中通过插件安装的任何东西都不会被发现。

正如khmarbaise已经说过的,解决方案是首先将工件放入存储库。通常的解决方案是你的公司Nexus/Artifactory (如果你认真开发Maven,应该有一个)。

如果这确实不可能,您可以使用一个目录作为Maven存储库,如下所述:https://stackoverflow.com/a/28762617/927493

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60728959

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档