前言:
眼前大家对“服务器如何发布网站”大约比较讲究,朋友们都需要剖析一些“服务器如何发布网站”的相关内容。那么小编同时在网络上搜集了一些对于“服务器如何发布网站””的相关知识,希望咱们能喜欢,大家一起来学习一下吧!第一步 注册域名及 OSS 账号首先你得要有一个自己的独立域名。上 注册自己的账号,注意:sonatype对账号的密码的格式要求极高,注册时记得保存好自己的密码在本子上。第二步 创建发布的工作任务(issue)
上oss后台创建工作任务(Issue):
Project: Open Source Project Repository Hosting (OSSRH)
Issue Type: New Project
例如:
提交成功后,OSS 的工作人员会在这个 ISSUE 回复你,要求你在自己提交的域名配置 TXT 记录:
比如我的 artfii.com 是在阿里云申请,则进入到阿里云后台增加 域名的DNS设置:
配置是否成功可用这个命令测试 : host -t txt xxxx.com
如果成功了,OSS 工作人员会回复你,说仓库已经准备好了,请把内容推送到:
第三步 修正项目的 POM 配置
增加许可协议、SCM信息、开发者信息
<properties> <scm.url>git@gitee.com:artlongs/amq.git</scm.url> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <javadocExecutable>${java.home}/../bin/javadoc</javadocExecutable> </properties> <developers> <developer> <name>QingFeng Li (leeton)</name> <email>mailtous@163.com</email> <organization>artfii.com</organization> </developer> </developers> <licenses> <license> <name>The Apache Software License, Version 2.0</name> <url>;/url> <distribution>repo</distribution> </license> </licenses> <scm> <connection>scm:git:${scm.url}</connection> <developerConnection>scm:git:${scm.url}</developerConnection> <url>${scm.url}</url> </scm> <distributionManagement> <snapshotRepository> <id>ossrh</id> <url>;/url> </snapshotRepository> <repository> <id>ossrh</id> <url>;/url> </repository> </distributionManagement>
注意: repository 的 id 要跟 maven setting 文件配置的 oss 权限 ID 相同,例如这里使用的是:ossrh .
修改 build 节,增加发布,GPG 认证相关信息:
<build> <finalName>${project.artifactId}-${project.version}</finalName> <pluginManagement> <plugins> <plugin> <artifactId>maven-clean-plugin</artifactId> <version>3.1.0</version> </plugin> <plugin> <artifactId>maven-resources-plugin</artifactId> <version>3.0.2</version> </plugin> <plugin> <artifactId>maven-surefire-plugin</artifactId> <version>2.22.1</version> </plugin> <plugin> <artifactId>maven-jar-plugin</artifactId> <version>3.0.2</version> </plugin> <plugin> <artifactId>maven-install-plugin</artifactId> <version>2.5.2</version> </plugin> <plugin> <artifactId>maven-deploy-plugin</artifactId> <version>2.8.2</version> </plugin> <plugin> <artifactId>maven-site-plugin</artifactId> <version>3.7.1</version> </plugin> <plugin> <artifactId>maven-project-info-reports-plugin</artifactId> <version>3.0.0</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.0</version> <configuration> <source>1.8</source> <target>1.8</target> <optimize>true</optimize> <encoding>UTF-8</encoding> <showWarnings>false</showWarnings> <showDeprecation>true</showDeprecation> <meminitial>128m</meminitial><!-- 编译器使用的初始内存 --> <maxmem>512m</maxmem><!-- 编译器使用的最大内存 --> </configuration> <inherited>true</inherited> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>versions-maven-plugin</artifactId> <version>2.3</version> <configuration> <generateBackupPoms>false</generateBackupPoms> </configuration> </plugin> <!-- sonatype maven repo --> <plugin> <groupId>org.sonatype.plugins</groupId> <artifactId>nexus-staging-maven-plugin</artifactId> <version>1.6.7</version> <extensions>true</extensions> <configuration> <serverId>ossrh</serverId> <nexusUrl>;/nexusUrl> <autoReleaseAfterClose>true</autoReleaseAfterClose> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> <version>2.2.1</version> <executions> <execution> <id>attach-sources</id> <goals> <goal>jar-no-fork</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>3.0.1</version> <executions> <execution> <id>attach-javadocs</id> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugin> <!-- GPG --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-gpg-plugin</artifactId> <version>1.5</version> <executions> <execution> <id>sign-artifacts</id> <phase>verify</phase> <goals> <goal>sign</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-deploy-plugin</artifactId> <version>2.8.2</version> <configuration> <skip>true</skip> </configuration> </plugin> </plugins> </pluginManagement> </build>修改自己的 maven setting 文件,增加在 OSS 的账号密码:
第四步,修改自己的 maven setting 文件,增加在 OSS 的账号密码:
<server> <id>ossrh</id> <username>Sonatype账号</username> <password>Sonatype密码</password></server>第五步,生成 gpg
苹果机子可以到 pc6网站下载 GPG Suite Mac版,安装好后可以使用 gpg --list-keys 命令来查询自己配置的key,记下这个key 用下面命令把key 注册到公共中心:
gpg --keyserver hkp://keyserver.ubuntu.com:11371 --send-keys 你的key
第六步 打包Deploy
使用 mvn clean deploy -P <profile-id> 命令,一键打包。
打包过程中会要求输入gpg密钥的Passphase信息,输入即可
第七步 发布Release
进入查看发布好的构件,点击左侧的Staging Repositories,一般最后一个就是刚刚发布的jar了,此时的构件状态为 Open
选中构件,并点击上方的 Close–>Confirm 在下边的Activity选项卡中查看状态。
当状态变成closed后,执行 Release–>Confirm 并在下边的Activity选项卡中查看状态。
成功后构件自动删除,一小段时间(约1-2个小时)后即可同步到maven的中央仓库。届时会有邮件通知。
至此,发布到Maven中央仓库完成。
##第七步 扫尾工作
对第二步提交的Issue增加Comment,留言致谢并表示发布已经完成,请工作人员关闭Issue。
在以下两个网站可以对自己上传的包进行搜索。
标签: #服务器如何发布网站