windows AndroidStudio上传maven中央仓库

发布于:2025-04-07 ⋅ 阅读:(31) ⋅ 点赞:(0)

一、插件地址:https://github.com/vanniktech/gradle-maven-publish-plugin?tab=readme-ov-file

二、Maven中心:https://vanniktech.github.io/gradle-maven-publish-plugin/central/

2.1、中央门户帐户,用github账号登陆:gh1225987336

2.2、已注册的命名空间,除了默认的:io.github.gh1225987336,还自己针对gitee创建了一个:io.gitee.gh1225987336

在这里插入图片描述

2.3、使用 windows 的 PwoerShell 命令

1、创建GPG密钥对

需要先安装 GnuPG二进制包:https://gnupg.org/download/index.html#sec-1-2
在这里插入图片描述

这里要注意很坑,官网的有误导,参考博客
这里使用的 windows 的 PwoerShell 命令,管理员身份运行

Microsoft Windows [版本 10.0.19045.4529]
(c) Microsoft Corporation。保留所有权利。

C:\Users\yl>gpg --full-generate-key
gpg (GnuPG) 2.4.5; Copyright (C) 2024 g10 Code GmbH
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Please select what kind of key you want:
   (1) RSA and RSA
   (2) DSA and Elgamal
   (3) DSA (sign only)
   (4) RSA (sign only)
   (9) ECC (sign and encrypt) *default*
  (10) ECC (sign only)
  (14) Existing key from card
Your selection? 4
RSA keys may be between 1024 and 4096 bits long.
What keysize do you want? (3072)
Requested keysize is 3072 bits
Please specify how long the key should be valid.
         0 = key does not expire
      <n>  = key expires in n days
      <n>w = key expires in n weeks
      <n>m = key expires in n months
      <n>y = key expires in n years
Key is valid for? (0)
Key does not expire at all
Is this correct? (y/N) y

GnuPG needs to construct a user ID to identify your key.

Real name: gh1225987336
Email address: 1225987336@qq.com
Comment:
You selected this USER-ID:
    "gh1225987336 <1225987336@qq.com>"

Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O
We need to generate a lot of random bytes. It is a good idea to perform
some other action (type on the keyboard, move the mouse, utilize the
disks) during the prime generation; this gives the random number
generator a better chance to gain enough entropy.
gpg: revocation certificate stored as 'C:\\Users\\yl\\AppData\\Roaming\\gnupg\\openpgp-revocs.d\\5589E74196338D53DF0A54C2873C51956A63241A.rev'
public and secret key created and signed.

Note that this key cannot be used for encryption.  You may want to use
the command "--edit-key" to generate a subkey for this purpose.
pub   rsa3072 2024-06-23 [SC]
      5589E74196338D53DF0A54C2873C51956A63241A
uid                      gh1225987336 <1225987336@qq.com>


C:\Users\yl>
2、分发密钥
Microsoft Windows [版本 10.0.19045.4529]
(c) Microsoft Corporation。保留所有权利。

C:\Users\yl>gpg --keyserver keyserver.ubuntu.com --send-keys 5589E74196338D53DF0A54C2873C51956A63241A
gpg: sending key 873C51956A63241A to hkp://keyserver.ubuntu.com

C:\Users\yl>
3、查询分发结果
Microsoft Windows [版本 10.0.19045.4529]
(c) Microsoft Corporation。保留所有权利。

C:\Users\yl>gpg --keyserver keyserver.ubuntu.com --recv-keys 5589E74196338D53DF0A54C2873C51956A63241A
gpg: key 873C51956A63241A: "gh1225987336 <1225987336@qq.com>" not changed
gpg: Total number processed: 1
gpg:              unchanged: 1

C:\Users\yl>
4、下面这里创建的错了(上面说的按照官网的坑)

参考:https://blog.csdn.net/ThomasChant/article/details/118940537

Microsoft Windows [版本 10.0.19045.4529]
(c) Microsoft Corporation。保留所有权利。

C:\Users\yl>gpg --gen-key
gpg (GnuPG) 2.4.5; Copyright (C) 2024 g10 Code GmbH
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Note: Use "gpg --full-generate-key" for a full featured key generation dialog.

GnuPG needs to construct a user ID to identify your key.

Real name: gh1225987336
Email address: 1225987336@qq.com
You selected this USER-ID:
    "gh1225987336 <1225987336@qq.com>"

Change (N)ame, (E)mail, or (O)kay/(Q)uit? O
We need to generate a lot of random bytes. It is a good idea to perform
some other action (type on the keyboard, move the mouse, utilize the
disks) during the prime generation; this gives the random number
generator a better chance to gain enough entropy.
We need to generate a lot of random bytes. It is a good idea to perform
some other action (type on the keyboard, move the mouse, utilize the
disks) during the prime generation; this gives the random number
generator a better chance to gain enough entropy.
gpg: C:\\Users\\yl\\AppData\\Roaming\\gnupg\\trustdb.gpg: trustdb created
gpg: directory 'C:\\Users\\yl\\AppData\\Roaming\\gnupg\\openpgp-revocs.d' created
gpg: revocation certificate stored as 'C:\\Users\\yl\\AppData\\Roaming\\gnupg\\openpgp-revocs.d\\BA1C440AAFCC1D98109A92700CC363940BC62E03.rev'
public and secret key created and signed.

pub   ed25519 2024-06-22 [SC] [expires: 2027-06-22]
      BA1C440AAFCC1D98109A92700CC363940BC62E03
uid                      gh1225987336 <1225987336@qq.com>
sub   cv25519 2024-06-22 [E] [expires: 2027-06-22]


C:\Users\yl>

C:\Users\yl>gpg --keyserver keyserver.ubuntu.com --send-keys BA1C440AAFCC1D98109A92700CC363940BC62E03
gpg: sending key 0CC363940BC62E03 to hkp://keyserver.ubuntu.com

C:\Users\yl>

查询分发结果

Microsoft Windows [版本 10.0.19045.4529]
(c) Microsoft Corporation。保留所有权利。

C:\Users\yl>gpg --keyserver keyserver.ubuntu.com --recv-keys BA1C440AAFCC1D98109A92700CC363940BC62E03
gpg: key 0CC363940BC62E03: "gh1225987336 <1225987336@qq.com>" not changed
gpg: Total number processed: 1
gpg:              unchanged: 1

C:\Users\yl>

2.4、 配置环境变量

1、获取内存中 GPG 密钥
Microsoft Windows [版本 10.0.19045.4529]
(c) Microsoft Corporation。保留所有权利。

C:\Users\yl>gpg --export-secret-keys --armor "gh1225987336 <1225987336@qq.com>"
-----BEGIN PGP PRIVATE KEY BLOCK-----

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
=oV3f
-----END PGP PRIVATE KEY BLOCK-----

C:\Users\yl>
2、以文件形式导出到指定目录

这里很坑,用官网的命令导出有问题,下面的命令来源在这里:链接

这里一定要切记,需要使用 windows 的 PwoerShell 命令,并且使用管理员身份运行
gpg --export-secret-keys -o D:\AndroidProject\secring.gpg

Windows PowerShell
版权所有 (C) Microsoft Corporation。保留所有权利。

尝试新的跨平台 PowerShell https://aka.ms/pscore6

PS C:\Windows\system32> gpg --export-secret-keys  -o D:\AndroidProject\secring.gpg
PS C:\Windows\system32> 1994.10.24.yl

在这里插入图片描述

3、获取公钥ID(如果已经有了可以使用这个命令查询)
Microsoft Windows [版本 10.0.19045.4529]
(c) Microsoft Corporation。保留所有权利。

C:\Users\yl>gpg --list-keys
[keyboxd]
---------
pub   rsa3072 2024-06-23 [SC]
      5589E74196338D53DF0A54C2873C51956A63241A
uid           [ultimate] gh1225987336 <1225987336@qq.com>


C:\Users\yl>
4、配置到c盘:C:\Users\yl\.gradle 下的 gradle.properties 文件中

到这一步就可以上传本地了,注意这个key取 5589E74196338D53DF0A54C2873C51956A63241A 的后8位

signing.keyId = 6A63241A
signing.password = 1994.10.24.yl
signing.secretKeyRingFile = D\:\\AndroidProject\\secring.gpg

三、下面的步骤还没搞好

2024最新maven上传方法,找到篇文章:https://blog.csdn.net/qq_34905631/article/details/136822495

使用其他存储库,GitHub Packages的,找到这篇:链接

token令牌,只显示一次,注意保管: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
在这里插入图片描述

获取Sonatype账号&密码(这一步还存疑,账号密码是不是指的这个)

链接:https://central.sonatype.com/account
在这里插入图片描述

<server>
	<id>${server}</id>
	<username>b7T1iV1a</username>
	<password>Dds4P5ZbzIF3JyI5yoW0J7aqL/aMszFuajqjPQ9J4Y/P</password>
</server>
配置环境变量
# Sonatype账号&密码
ORG_GRADLE_PROJECT_mavenCentralUsername=LXrYiNpc
ORG_GRADLE_PROJECT_mavenCentralPassword=q3encKQUucRvWDDooEXqDIh7RukluSyADI+MgVTxUC/h

# see below for how to obtain this
ORG_GRADLE_PROJECT_signingInMemoryKey=lIYEZnarDhYJKwYBBAHaRw8BAQdAlRdC9Vx1xvvkIzbNhviSYRvy2JIcoEUyYG4KTk7CYvr+BwMCdI9/fMAswoHO/sU8MEk4hArtnOq33WCZbNBJZHrGAU1mBVNz6xIkID/Otn29PLJ7Zt+k55Xa/DDu1mH6lt19iM14jOL6D7Qtpozit/u/KbQgZ2gxMjI1OTg3MzM2IDwxMjI1OTg3MzM2QHFxLmNvbT6ImQQTFgoAQRYhBLocRAqvzB2YEJqScAzDY5QLxi4DBQJmdqsOAhsDBQkFo5qABQsJCAcCAiICBhUKCQgLAgQWAgMBAh4HAheAAAoJEAzDY5QLxi4D0Z8A/1Vuih34YFViPKV/TZmeCi8UqYkDmoh8d58vtygh48cgAPoDqSmSzoGLW1Rrt/89QXjKIvE7Ds1HPqHqBQwOlScYCZyLBGZ2qw4SCisGAQQBl1UBBQEBB0D54sDMKgyIfY+X3eSy4pwhqS579xCR0DUQFjzwuXswQAMBCAf+BwMC8LHO2YbaHunOWFwU16+Ewb/NiSQzzshdCF4hwK5XQs8WfV9ry9Rrj89lf5IeyMq2Y7KS4eyrUk/OIqYUSVFv5T0p8+46Z/cu8FX5x9OlRoh+BBgWCgAmFiEEuhxECq/MHZgQmpJwDMNjlAvGLgMFAmZ2qw4CGwwFCQWjmoAACgkQDMNjlAvGLgOLggEA9ib3v4hgFQ/QOkG+uZrJqdbkJHuALbzM3nJQRlQGOF0BAJuK5DXjhZ9UKSfamz1LPQ39vN2JrskIl3hAjDCJw7UP=9vhu
# 密钥ID的后8位
ORG_GRADLE_PROJECT_signingInMemoryKeyId=BA1C440AAFCC1D98109A92700CC363940BC62E03
# 密钥密码
ORG_GRADLE_PROJECT_signingInMemoryKeyPassword=1994.10.24.yl

网站公告

今日签到

点亮在社区的每一天
去签到