南充房管局网站查询房产,设计的有趣的网站,个人开个装修小公司,济宁城乡建设局网站在线maven托管如果您使用Amazon Web Services并将Java用于项目#xff0c;则Amazon S3是托管团队工件的理想场所。 它很容易设置#xff0c;而且很便宜。 如果您对它们的功能不特别感兴趣#xff0c;那么它比设置现有存储库选项#xff08;jfrog#xff0c;nexus#xf… 在线maven托管 如果您使用Amazon Web Services并将Java用于项目则Amazon S3是托管团队工件的理想场所。 它很容易设置而且很便宜。 如果您对它们的功能不特别感兴趣那么它比设置现有存储库选项jfrognexusarchiva等要简单得多。 首先您需要指定一个支持s3的Maven旅行车。 我们将使用s3储物车 。 让我们开始创建一个Maven项目 mvn archetype:generate -DgroupIdcom.test.apps -DartifactIdS3WaggonTest -DarchetypeArtifactIdmaven-archetype-quickstart -DinteractiveModefalse 我们将添加一个简单的服务。 package com.test.apps;public class HelloService {public String sayHello() {return Hello;}
} 然后我们将添加Maven旅行车该旅行车将上传我们的二进制文件并将其提取到s3。 buildextensionsextensiongroupIdcom.gkatzioura.maven.cloud/groupIdartifactIds3-storage-wagon/artifactIdversion1.0/version/extension/extensions/build 然后我们将创建将存储工件的s3存储桶。 aws s3 createbucket artifactbucket. 现在我们创建了存储桶。 然后我们将在我们的Maven项目中设置分发管理。 distributionManagementsnapshotRepositoryidmy-repo-bucket-snapshot/idurls3://my-test-repo/snapshot/url/snapshotRepositoryrepositoryidmy-repo-bucket-release/idurls3://my-test-repo/release/url/repository/distributionManagement 从Maven文档 正如repositories元素在POM中指定Maven可以下载远程工件以供当前项目使用的位置和方式那样而distributionManagement指定此项目在部署时将在何处以及如何到达远程存储库。 如果未定义snapshotRepository则存储库元素将用于快照分发。 下一步是最关键的这与向aws进行身份验证有关。 一种简单的方法是将aws cli配置为指向存储桶所在的区域并具有对将托管二进制文件的s3存储桶具有读写访问权限的凭据。 aws configure
AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE
AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
Default region name [None]: us-west-2
Default output format [None]: json 另一种方式是使用maven方式并在〜/ .m2 / settings.xml中指定我们的AWS凭证。 serversserveridmy-repo-bucket-snapshot/idusernameEXAMPLEEXAMPLEXAMPLE/usernamepasswordeXampLEkeyEMI/K7EXAMP/bPxRfiCYEXAMPLEKEY/password/serverserveridmy-repo-bucket-release/idusernameEXAMPLEEXAMPLEXAMPLE/usernamepasswordeXampLEkeyEMI/K7EXAMP/bPxRfiCYEXAMPLEKEY/password/server/servers 请注意您必须为指定的每个存储库指定凭据。 同样我们还没有结束因为指定存储桶的区域至关重要。 为此您可以将其设置为Amazon方式从而在环境变量中指定它 AWS_DEFAULT_REGIONus-east-1 或者您可以在执行deploy命令时将其作为属性传递。 -DAWS_DEFAULT_REGIONus-east-1 现在最容易部署的部分。 mvn deploy 现在既然已经部署了工件则可以通过指定存储库和旅行车在另一个存储库中使用它。 repositoriesrepositoryidmy-repo-bucket-snapshot/idurls3://my-test-repo/snapshot/url/repositoryrepositoryidmy-repo-bucket-release/idurls3://my-test-repo/release/url/repository/repositoriesbuildextensionsextensiongroupIdcom.gkatzioura.maven.cloud/groupIdartifactIds3-storage-wagon/artifactIdversion1.0/version/extension/extensions/build 而已 接下来您知道您的工件将被maven通过s3下载并用作新项目中的依赖项。 翻译自: https://www.javacodegeeks.com/2018/04/host-your-maven-artifacts-using-amazon-s3.html在线maven托管