繁体   English   中英

可以发布到 mavenLocal 但不能发布到远程仓库吗?

Can publish to mavenLocal but not remote repo?

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

$ ./gradlew -version

------------------------------------------------------------
Gradle 6.5
------------------------------------------------------------

Build time:   2020-06-02 20:46:21 UTC
Revision:     a27f41e4ae5e8a41ab9b19f8dd6d86d7b384dad4

Kotlin:       1.3.72
Groovy:       2.5.11
Ant:          Apache Ant(TM) version 1.10.7 compiled on September 1 2019
JVM:          1.8.0_181 (Oracle Corporation 25.181-b13)
OS:           Mac OS X 10.15.7 x86_64

我有一个包含以下build.gradle文件的build.gradle

plugins {
    id 'java'
    id 'maven-publish'
}

dependencies {
    compileOnly group: 'org.projectlombok', name: 'lombok', version: '1.18.10'
    annotationProcessor group: 'org.projectlombok', name: 'lombok', version: '1.18.10'

    compile group: 'javax.validation', name: 'validation-api', version: '2.0.1.Final'
}

task sourcesJar(type: Jar, dependsOn: classes){
    from sourceSets.main.allSource
}

artifacts{
    archives sourcesJar
}

publishing {
    repositories{
        maven {
            url 's3://' + s3_bucket
            authentication {
                awsIm(AwsImAuthentication)
            }
        }
    }
    publications {
        integrationsCommon(MavenPublication){
            artifactId artifactId
            from components.java
            artifact sourcesJar{
                classifier "sources"
            }
        }
    }
}

我可以跑

$ ./gradlew clean build pTML -p my-sub-project

...并查看发布在我的~/.m2本地存储库中的工件。

但是当我运行publish任务时出现以下错误

$ ./gradlew clean build publish -p my-sub-project
* What went wrong:
Execution failed for task ':my-sub-project:publishIntegrationsCommonPublicationToMaven2Repository'.
> Failed to publish publication 'integrationsCommon' to repository 'maven2'
   > java.lang.NullPointerException (no error message)

为什么? 我的印象是,如果可以发布到 Maven 本地,我可以在任何地方发布! (天啊,我想念 Maven!)。

1 个回复

AWS 文档建议定义credentials

这只是指 CodeArtifact 而不是 S3,后者似乎是常见的后端。 如果您想使用 S3 代替...在命令中添加--stacktrace ,以确定可能导致NullPointerException原因; 配置可能缺少必要的东西。

这将是 S3 的 Gradle 文档: AWS S3 存储库配置

1 如何查看发布到maven local的库的日志?

我发布了我在AS中编写的一个库,以在本地进行Maven操作,并正在运行我的应用程序并测试对该库的各种调用。 我可以看到我的应用程序日志在AS上运行正常,但是我不确定如何记录该库,因为该库实际上未在设备或仿真器上运行。 ...

2019-01-14 22:47:18 0 6   android
2 使用Gradle将jar发布到MavenLocal

我正在使用Gradle使用多个Eclipse项目来管理产品的构建。 这些项目中有几个使用的jar文件在中央存储库(例如MavenCentral)中不可用。 我希望有一个将这些jar放入其中的eclipse项目,以及一个build.gradle,它将使用我指定的groupId,arti ...

4 如何将android库模块发布到mavenLocal()?

我正在开发具有以下模块的库: 应用程式 抽象图书馆 实施库 模块抽象库和实现库是两个库模块。 实现库依赖于抽象库,而应用程序依赖于抽象库和实现库模块。 这个想法是使用app模块作为示例来开发我的库,然后将这些库模块发布到一个仓库(目前为本地),并在商业应 ...

5 Git将单个分支发布到辅助远程仓库

我有一个用于积极开发的git仓库,还有一个“公共”仓库,我们在其中发布发行代码供其他团队使用。 我不是git专家,所以我不知道这是可以直接使用的方法,还是我目前正在做的事情是最好的方法。 我们需要做的是获取完成的发布代码,并将其在sprint周期结束时发布到我们的公共仓库中。 我们 ...

6 使用build.gradle.kts发布到mavenLocal

我正在尝试将工件发布到~/.m2 (maven-local),作为Gradle新手,我不确定我缺少什么 到目前为止,我所看到的所有示例都建议使用publishing块,当我运行任何Gradle命令时,该块都会引发弃用警告。 还包括不带任何publishing块的maven-publish ...

8 使用 Gradle 将 Java 工件发布到 Maven Local

尝试将生成的 jar 安装到本地 Maven 存储库时遇到问题。 消息错误仅显示“未找到任务‘发布’” 我正在使用这个 Gradle 脚本: 您知道为什么我会阅读该错误消息吗? 谢谢。 更新 运行@RaGe 提到的命令,解决了问题: ...

9 Popen在本地工作,但不能远程发布

我通过pyinstaller创建了一个python.exe,它将打开一个名为notpadplus.Lnk的notepad ++快捷方式。 当我在本地运行程序时,python.exe将打开notepad ++。 但是,当我告诉Jenkins运行python.exe时,没有打开任何东西。 ...

10 如何在本地和远程仓库中发布Grails插件

我正在构建Grails应用程序以及该应用程序将用作依赖项的插件。 我需要一种方法来更改插件,在本地发布,构建应用程序(使用新版本的插件SNAPSHOT),然后执行grails run-app以获取所有更改。 我还需要一种将插件发布到远程Artifactory仓库的方法,并让Grails应 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM