(オープンソースのミドルウェアの開発の準備のために)Mavenのリポジトリを公開するジャーパッケージ

マイクロチャンネル公共数:bugstackワームホールスタック|共有への降水量は、成長し、オリジナルのテーマケースに焦点を当て、方法で最も可能性の高い何かを学ぶために自分自身と他人を助けるために、共有の知識にプログラミングを学ぶために。トピックが完了している。Netty4.x実際のトピックの例を、JavaでJVMを達成するために、JavaAgentフルリンク監視基づき、RPCフレームワーク、アーキテクチャ設計プロジェクトの場合、[のIng]などを手書き。

はじめにはじめに

(12月19日)は、最近、分散タスクDcsScheduleミドルウェアの開発はスケジュールを向上させることができ、共有春ブーツをベースとしたオープンソースプロジェクトになりたかったです。だから、ユーザーがそれを直接導入することができます使用する必要があるので、Mavenの中央リポジトリにジャーパッケージをさせる問題があると思っています。

リリース準備

コンテンツ リマーク
1 アプリケーションのGitHubアカウント:github.com オープンソースをアップロードするため:github.com/fuzhengwei / ...
2 GPGキーツールを生成します。gpg4win.org/download.htを... ダウンロードおよびアップロードロケーションサーバへの鍵を生成するために、以降のインストールプロセスでは、サーバは本明細書中で使用される:HKP://keyserver.ubuntu.com:80
3 チケットシステム:issues.sonatype.org 資格を申請すると、アップロード最初のアップロードを完了する責任、その後の更新はスターターと同等のものを使用する必要はありません
4 倉庫のパーツ:oss.sonatype.org リリースは、また、自動的にローカル公開するように設定することができた後のjarパッケージが最初にここに格納されますアップロード、あなたはここでMavenの中央倉庫に公開することができます
5 ミラー倉庫:search.maven.org jarファイルの最終的な成功は、検索するためにここに公開することができます
6 Mavenのリポジトリ:mvnrepository.com 辛抱強く待っているの数時間後にMavenのリポジトリに発見されます
7 アリクラウドストレージ:maven.aliyun.com アリクラウドリポジトリの同期が速くなります
8 パーソナルドメイン:bugstack.cn ここでは主に、作業順序の適格性確認のため(このJIRAチケットを参照し、あなたのDNSにTXTレコードを追加します。OSSRH-53637(最速))

リズムに従ってください

1.ダウンロードキー生成GPGをインストール

私たちはあなたのパッケージはjarファイルを改ざんされていないことを確認するために、暗号化され、署名されたファイルをアップロードするために使用され、GPG環境を必要とします

1991年に、政府の監視、先進の暗号化ソフトウェアPGPを避けるために、プログラマフィル・ジマーマン。ソフトウェアは、急速な普及非常に使いやすいです、それは多くのプログラマのための不可欠なツールとなっています。しかし、それは、自由に使用する商用ソフトウェアではありません。ですから、フリーソフトウェア財団は、GnuPGの名前のPGPの代替品を開発することを決めました。これは、GPGの原点です。

  1. ダウンロード:gpg4win.org/download.ht ...
  2. ダウンロードは直接比較愚か者のインストールは非常に簡単でインストールすることができます完了した後、(あなたが投票することができない場合は、ハード英語)中国を選択することを忘れないでください
  3. (コマンドラインを生成するために使用され得る、ユーザインタフェースに直接生成されてもよい)鍵を生成します
    1. ファイル>新規キー(Ctrlキー+ N)は - 個人のOpenPGPキーのペアを作成します。
    2. あなたの個人情報を入力し、[新規作成]を名前と電子メールをクリックしてください
    3. 鍵暗号方式で塗りつぶし
    4. ディレクトリサービスに公開鍵をアップロード{アップロードが失敗した場合、によって:設定値(S) - >構成クレオパトラ(C)、OpenPGPの鍵サーバを変更する:HKP://keyserver.ubuntu.com:80}

2.作業指示システムアカウント登録issues.sonatype

1.登録アドレス:issues.sonatype.org/secure/Sign ...

作業指示を作成します。2.

  • 项目:コミュニティサポート - オープンソースプロジェクトリポジトリのホスティング
  • 概要:ジャーの名前
  • 説明:オプション、最高の明確なように記述
  • グループID:org.itatack.middleware&ドメイン名とあなたの関係、フォローアップが必要とされているため、ドメイン名の検証
  • プロジェクトURL:Githubのプロジェクトサイト(github.com/fuzhengwei / ...
  • SCMのURL:ソースリポジトリ(github.com/fuzhengwei / ...

手動の口コミを3.

  1. あなたは、単一の完了を作成すると、フィードバックを受け取り(海外で、彼らはより迅速に審査するとき、私たちは夜の真ん中時間貧しい人々を、持っています)。

    Do you own the domain itstack.org? If so, please verify ownership via one of the following methods:
    
    Add a TXT record to your DNS referencing this JIRA ticket: OSSRH-53637 (Fastest)
    Setup a redirect to your Github page (if it does not already exist)
    If you do not own this domain, please read:
    http://central.sonatype.org/pages/choosing-your-coordinates.html
    You may also choose a groupId that reflects your project hosting, in this case, something like io.github.fuzhengwei or com.github.fuzhengwei
    
    Would you like to use a free managed security reporting service (recommended)?
    Put https://hackerone.com/central-security-project/reports/new as your project's security issue reporting URL. We'll take care of the rest.
    For more details on the Central Security Project, visit https://www.sonatype.com/central-security-project
    复制代码

  2. ドメイン確認の署名を設定、TXT点が問題領域に:issues.sonatype.org/browse/OSSR ...

  3. ドメイン確認ショット、質問に戻って、手動レビュープロセスが検証されます

  4. 認証が成功した後、あなたは電子メールの返信を受信します、あなたはまた、問題に見ることができます{あなたのジャーは、リリースの完全なを教えて、赤ちゃんそれを言う公開することを意味し(ここで返信の下で、私はあなたが使用してもらおう)}

     org.itstack.middleware has been prepared, now user(s) fuzhengwei can:
     * Deploy snapshot artifacts into repository https://oss.sonatype.org/content/repositories/snapshots
     * Deploy release artifacts into the staging repository https://oss.sonatype.org/service/local/staging/deploy/maven2
     * Release staged artifacts into repository 'Releases'
    
     please comment on this ticket when you promoted your first release, thanks
    复制代码
  5. 次のように(!あなたが成功していることを証明するために)、その後、ジャーパッケージのリリース後の成功を待つここで返信し、フィードバックを受けます。

    Central sync is activated for org.itstack.middleware. After you successfully release, your component will be published to Central, typically within 10 minutes, though updates to search.maven.org can take up to two hours.
    复制代码

3.設定のMavenいるSettings.xml

1. Mavenののsettings.xml構成サーバーが追加されます。

<server>
	<id>sonatype-nexus-snapshots</id>
	<username>https://issues.sonatype.org的账号</username>
	<password>https://issues.sonatype.org的密码</password>
</server>
<server>
	<id>sonatype-nexus-staging</id>
	<username>https://issues.sonatype.org的账号</username>
	<password>https://issues.sonatype.org的密码</password>
</server>
<server>
	<id>ossrh</id>
	<username>https://issues.sonatype.org的账号</username>
	<password>https://issues.sonatype.org的密码</password>
</server>
复制代码

高速アリクラウド倉庫構成ミラーで、瓶を装填するために、2。

<mirror>
  <id>alimavenrepository</id>
  <name>aliyun maven repository</name>
  <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
  <mirrorOf>central</mirrorOf>        
</mirror>
复制代码

3.キー設定、ossrhにプロファイルを追加

<profile>
	<id>ossrh</id>
	<activation>
		<activeByDefault>true</activeByDefault>
	</activation>
	<properties>
		<gpg.executable>D:/Program Files (x86)/GnuPG/bin/gpg.exe</gpg.executable>
		<gpg.passphrase>上面生成的密钥密码:bugstack.cn</gpg.passphrase>
		<gpg.homedir>{找到dir:cmd->gpg --list-key}C:/Users/fuzhengwei/AppData/Roaming/gnupg</gpg.homedir>
	</properties>
</profile>
复制代码

4.設定POMファイル

1.追加SCM、ライセンス、開発者は、POMファイルでdistributionManagement

 <licenses>
	<license>
		<name>The Apache Software License, Version 2.0</name>
		<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
		<distribution>repo</distribution>
	</license>
</licenses>

<scm>
	<url>https://github.com/fuzhengwei/schedule-spring-boot-starter</url>
	<connection>https://github.com/fuzhengwei/schedule-spring-boot-starter.git</connection>
	<developerConnection>https://github.com/fuzhengwei/schedule-spring-boot-starter</developerConnection>
</scm>

<developers>
	<developer>
		<name>fuzhengwei</name>
		<email>[email protected]</email>
		<url>https://github.com/fuzhengwei/schedule-spring-boot-starter</url>
	</developer>
</developers>

<distributionManagement>
	<snapshotRepository>
		<id>ossrh</id>
		<url>https://oss.sonatype.org/content/repositories/snapshots</url>
	</snapshotRepository>
</distributionManagement>
复制代码

2. [設定の編集の広告は、関連するプラグインをのgpg、構築します

  • ソースJARファイルを生成するためのmaven-ソース・プラグイン
  • Javadocの生成にMavenの-javadocは、プラグイン
  • 自動署名のためのプロジェクトファイルへのmaven-GPG-プラグイン
  • そうでない場合は、私は次のように完全な設定があり、非標準のJavadocコメントと原因故障を使用する場合がありますので、ネクサスステージング-mavenの-プラグインは、中央の倉庫にJavadocの生成閉じdoclintを指定する必要があるため、追加の注意をプロジェクトを公開するために使用されます
<!-- 发布Jar到Maven仓库 Begin -->
<!--生成Source jar文件-->
<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>
<!--生成Javadoc,关闭doclint,避免注解检查不通过-->
<plugin>
	<groupId>org.apache.maven.plugins</groupId>
	<artifactId>maven-javadoc-plugin</artifactId>
	<version>2.9.1</version>
	<executions>
		<execution>
			<id>attach-javadocs</id>
			<goals>
				<goal>jar</goal>
			</goals>
			<configuration>
				<additionalparam>-Xdoclint:none</additionalparam>
			</configuration>
		</execution>
	</executions>
</plugin>
<!--Maven 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>
<!--Nexus Staging Maven插件是将组件部署到OSSRH并将其发布到Central Repository的推荐方法-->
<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>https://oss.sonatype.org/</nexusUrl>
		<autoReleaseAfterClose>true</autoReleaseAfterClose>
	</configuration>
</plugin>
<!-- release plugin,用于发布到release仓库部署插件 -->
<plugin>
	<groupId>org.apache.maven.plugins</groupId>
	<artifactId>maven-release-plugin</artifactId>
	<version>2.4.2</version>
</plugin>
<!-- 发布Jar到Maven仓库 End -->
复制代码

4.解放行う;アイデアMavenの - >ライフサイクル - >展開

  1. 次の開発リリースジャーパッケージ、真ん中には、パスワード鍵生成時刻を入力するように求めるメッセージが表示されます
  2. oss.sonatype.orgビュー公開されたコンテンツ
  3. トップに「手動口コミを、」情報の成功リリースが提出した声明によると、検証が成功すると、以下のように、応答を受信します。
    Central sync is activated for org.itstack.middleware. After you successfully release, your component will be published to Central, typically within 10 minutes, though updates to search.maven.org can take up to two hours.
    复制代码
  4. search.maven.org検索バージョン情報
  5. maven.aliyun.comアリクラウドリポジトリ同期より速く、あなたが見ることができます

要約要約します

  • 全体のプロセスは、ああ、行くと取得する最初の試み場合、あなたはおそらく眠れぬ夜持って、非常に長いままです
  • 中央のキー、梱包、髪のバージョンなどに、注意を払う詳細に、独自慎重にこの記事を読んで、いくつかの試みなど、さまざまな例外のエラーが発生する場合があり、私は恐れて、成功します
  • 常識的な質問の比較; RELEASEバージョンでのみ失敗する他のものをアップロードすることができ、外国人がより迅速に我々が応答夜の本当に真ん中です彼ら夜明け真夜中理由

マイクロチャンネル公共数:bugstackワームホール・スタック、歓迎の注意&ソースを取得します。

おすすめ

転載: juejin.im/post/5deb370fe51d4557f638a993