java - 如何将java项目的maven Artifact 部署/托管到Google Cloud Storage?

标签 java spring maven google-cloud-platform

我们有一个基于 Spring 的多个项目。我们正在将 Spring Boot 应用程序部署到 Google Cloud Platform 中。我们需要构建一个 Maven Artifact ,以便我们可以将该 Artifact 用于多个基于 Spring 的项目。

最佳答案

为此,您可以使用 google-storage-wagon maven 依赖项。这真是一篇很棒的文章How to deploy/host the maven artifact of a project to Google Cloud Storage? 。如果您遵循一些步骤,那么您一定会实现您的目标。

第 1 步:创建一个要为其构建 Maven Artifact 的项目。 mvn archetype:generate -DgroupId=com.javaaltaf -DartifactId=SMSGateway -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

第 2 步:现在创建一个用于测试目的的简单类。顺便说一句,根据您的要求,您可以创建多个类。

public class MessageSender {
 public String sendSMS(String mobile, String message) {
  return "SMS sending....to " + mobile + "  with messsage=" + message;
 }
}

第 3 步:您必须在 Emmanouil Gkatziouras 提供的 pom.xml 中添加扩展内部标记。您可以从 here 下载最新的 google-storage-wagon 。这会将我们的 Artifact 上传到 Google Cloud Storage 或从 Google Cloud Storage 下载。

<build>
  <extensions>
   <extension>
    <groupId>com.gkatzioura.maven.cloud</groupId>
    <artifactId>google-storage-wagon</artifactId>
    <version>1.6</version>
   </extension>
  </extensions>
</build>

第 4 步:现在通过菜单 -> 存储 -> 浏览器创建一个存储桶。之后,转到概述部分并复制 gsutil URL。现在将存储桶信息设置到 pom.xml 中,以便 Maven 可以了解 Artifact 的目的地。为此,您必须在 标记后面添加 标记。

<distributionManagement>
  <snapshotRepository>
   <id>mysms-snapshot</id>
   <url>gs://altafsms/snapshot</url>
  </snapshotRepository>
  <repository>
   <id>mysms-release</id>
   <url>gs://altafsms/release</url>
  </repository>
 </distributionManagement>

第 5 步:您应该已安装 Google Cloud SDK。如果没有,那么您需要安装。安装后您需要登录GCS。您可以使用命令gcloud auth application-default login

第 6 步:最后使用命令 mvn deploy 将您的 Maven Artifact 部署到 Google 云存储中。

第 7 步:您必须将相同的 添加到您在上一个项目中已添加的 pom.xml 中。

<build>
<extensions>
 <extension>
  <groupId>com.gkatzioura.maven.cloud</groupId>
  <artifactId>google-storage-wagon</artifactId>
  <version>1.6</version>
 </extension>
</extensions>
</build>

之后,将早期项目的 GAV(groupId、artifact id、version)添加为 pom.xml 文件中的标记,您就完成了。如需完整信息,您可以阅读此博客 How to deploy/host the maven artifact of a project to Google Cloud Storage? .

关于java - 如何将java项目的maven Artifact 部署/托管到Google Cloud Storage?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59942673/

相关文章:

java - Eclipse 删除我的 .classpath

java - 不能将 @RequestBody 与 PostMapping 一起使用,只能与 GetMapping 一起使用

java - 在具有泛型参数的泛型方法中使用 Spring RestTemplate

java - “gpg2”未被识别为内部或外部命令

java - 无法定位 Javac 编译器 maven sonar :sonar

java - 如何获取JAVA中所有被调用的方法

java - 无法以编程方式在 Android L 中截取屏幕截图

java - 替换字符串中的相应字符(java)

javascript - Spring 形式 :select run JavaScript function on creating options

java - 如何分析 Maven pom.xml 的错误(用于冗余或忽略属性的 pom linter?)