gradle上传jar包到maven公共仓库

首先这里说的中央仓库

是指的 https://issues.sonatype.org/

而不是maven私服。

其次是使用gradle上传jar包,maven上传,网上有很多教程,这里不做赘述。

首选在https://issues.sonatype.org/上注册账号并登陆!

接着是创建ISSUE(问题)

点击  新建 弹出对话框

填完信息后点击  新建 按钮即可。

 可以看到ISSUE创建成功了。

在这里需要记住ISSUE ID 也就是本例中的OSSRH-53913

没有记住也没关系,在这里可以找到。

找到之后,迅速到你的github注意去创建一个仓库,这个仓库名叫:OSSRH-53913 (当然以你的ISSUE ID为准)

这个仓库就是个空仓库,什么都不用放

接下来就是等待了,直到这个ISSUE被审核通过(需要注意的是,如果不进行创建仓库那一步,审核是不会通过的)

审核通过之后,我们就可以上传jar包到中央仓库了.

我这里使用的gradle版本是5.6.2

编辑build.gradle文件

添加插件:

apply plugin: 'maven'
apply plugin: 'maven-publish'

再添加:

task sourcesJar (type:Jar) {
    archiveClassifier = 'sources'
}

//设置任务依赖关系,打jar包的同时,打源码包
jar.dependsOn(sourcesJar)

/**
 * 默认使用gradlew clean install命令时,仅仅只是安装编译好的包,源码包
 * 是不会安装到maven仓库的,添加此配置可以将源码包打入到本地maven仓库
 * doc包也可以如法炮制
 */
artifacts {
    archives sourcesJar
}

publishing {
    publications {
        myPublication(MavenPublication) {
//            如果是war包填写components.web,如果是jar包填写components.java
            from components.java
//            指定group/artifact/version信息,可以不填。默认使用项目group/name/version作为groupId/artifactId/version
//            groupId需要注意一下,如果下面仓库的配置是oss.sonatype.org(即中央仓库),那么这里的groupId必须为你在sonatype中申请的ISSUE中设置的ID
            groupId "io.github.chenwuwen"
            artifactId "$project.name"
            version "$version"
            artifact(sourcesJar) {
                classifier = 'sources'
            }
        }
    }
    repositories {
        maven {
//            这里如果配置的是sonatype(中央仓库的地址),需要注意上方的groupId,应该跟sonatype中的对应的ISSUE中设置的Group Id 一致
            url "https://oss.sonatype.org/content/repositories/snapshots"
            credentials {
                username = '刚刚申请的sonatype账号'
                password = '刚刚申请的sonatype密码'
            }
        }
    }
}

 添加完成之后。

执行命令:

gradlew publish

直到出现

表示上传成功。

怎么查看上传之后的jar包呢?

打开 https://oss.sonatype.org/#welcome

登录,输入之前申请的用户名密码(也可以不登录)

 在中间的搜索框中输入,你上传jar包的  artifactId 即可!

猜你喜欢

转载自www.cnblogs.com/kanyun/p/12053285.html