Kar*_*tik 7 java maven docker spring-boot spotify-docker-client
我有一个多模块 Maven 项目。父 pom 看起来像这样:
<project>
...
<packaging>pom</packaging>
<modules>
<module>common</module>
<module>a</module>
<module>b</module>
</modules>
</project>
Run Code Online (Sandbox Code Playgroud)
common
构建一个 jar,它作为依赖项添加到其他模块中,如下所示:
<dependency>
<groupId>my.project</groupId>
<artifactId>common</artifactId>
<version>${module.common.version}</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
Modulesa
和b
Spring Boot 项目具有spotify docker 插件。
我需要能够运行mvn deploy
才能让 spotify 插件推送 docker 镜像。
mvn install
工作正常,它构建了 docker 图像。但是为了推送它们,当我运行时mvn deploy
,它会为common
模块抛出错误:
[错误] 无法在项目 common 上执行目标 org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy):部署失败:在 distributionManagement 元素内的 POM 中或在 - 中未指定存储库元素DaltDeploymentRepository=id::layout::url 参数
搜索此错误,此答案建议在该distributionManagement
部分中添加存储库 url 。但我不想部署common
. 我只想构建它,因此它作为其他模块中的依赖项被注入并部署这些其他模块。我怎样才能做到这一点?
我尝试仅部署a
并b
使用此命令,但它给出了相同的错误common
:
mvn clean \
-DdockerRegistryHost=123.dkr.ecr.us-west-1.amazonaws.com/test1 \
--projects a,b \
--also-make \
deploy
Run Code Online (Sandbox Code Playgroud)
您可以通过配置maven-deploy-plugin
.
尝试将以下内容添加到您的父 pom:
<build>
...
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<version>3.0.0-M1</version>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</pluginManagement>
...
</build>
Run Code Online (Sandbox Code Playgroud)
或添加-Dmaven.deploy.skip=true
到您的命令行。
归档时间: |
|
查看次数: |
6800 次 |
最近记录: |