java - 在 bash shell 上使用 Maven 来自动化我的部署工作流程 (github-package-registry)
问题描述
我正在使用下面的命令行正确部署我的 JAR 文件,但是我想创建一个pom.xml
文件并调用mvn deploy
或类似的东西来将此包部署到 github 包。
这可能吗?我该怎么做?
mvn deploy:deploy-file -DgroupId=com.soma -DartifactId=my-module \
-Dversion=1.0.0 -Dpackaging=jar -Dfile=my-module.jar \
-DrepositoryId=github \
-Durl=https://maven.pkg.github.com/$USER/my-artifacts
换句话说,我更喜欢使用 Maven 来自动化我的工作流程,而不是 bash shell。
我很感激任何帮助。
解决方案
下面的最小值pom.xml
应该通过执行mvn deploy
以下警告来工作:
替换
$USER
为您的实际 GitHub 用户 ID把你的 JAR 放进去
target/my-module-1.0.0-SNAPSHOT.jar
确保您
${user.home}/.m2/settings.xml
有一个<server/>
包含 GitHub 用户和令牌的条目
<?xml version="1.0" encoding="utf-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.soma</groupId>
<artifactId>my-module</artifactId>
<version>1.0.0</version>
<distributionManagement>
<downloadUrl>https://maven.pkg.github.com/$USER/${project.groupId}/</downloadUrl>
<repository>
<id>github</id>
<url>https://maven.pkg.github.com/$USER/${project.groupId}/</url>
</repository>
</distributionManagement>
</project>
如果您已经为项目构建了 Maven,这应该很简单。
(在尝试部署多模块项目或快速重新部署工件时,我遇到了 GitHub 限制请求的问题。)
推荐阅读
- java - org.openqa.selenium.TimeoutException:使用 AutoCloseable 在 Ubuntu 中运行无头 Firefox 浏览器时连接被拒绝错误
- todoist - 无法编辑截止日期
- arrays - VBA 数组允许的数据类型
- javascript - 单击按钮后如何创建 0.01 的增量值
- r - 在 R 中构造正交向量的最简单方法
- java - 使用超时的订阅者动态发布单个项目
- azure-api-management - 如何使用 Azure Api Management 发送带有文件和数据的表单数据?
- c++ - “不需要” == 未定义的行为?
- xamarin - DisplayAlert Xamarim 表单
- python - pyton.org 上的 Python myqsl.connector 连接错误