将带有gradle的jar以外的内容发布到Nexus

将带有gradle的jar以外的内容发布到Nexus,gradle,ant,nexus,progress-4gl,openedge,Gradle,Ant,Nexus,Progress 4gl,Openedge,我正在尝试使用Gradle和Ant来构建我们的OpenEdge项目。OpenEdge是几个世纪前的4GL语言 无论如何,我已经设法下载了一些jar依赖项,但现在我陷入了如何将PL文件(进度库)发布到Nexus存储库的困境。问题是,与Maven一样,Gradle似乎也适合Java项目 这是我的脚本(我还有一个settings.gradle文件,rootProject.name='stomp'): 运行gradle publish将提供下一个输出: C:\Workspace\git reposito

我正在尝试使用Gradle和Ant来构建我们的OpenEdge项目。OpenEdge是几个世纪前的4GL语言

无论如何,我已经设法下载了一些jar依赖项,但现在我陷入了如何将PL文件(进度库)发布到Nexus存储库的困境。问题是,与Maven一样,Gradle似乎也适合Java项目

这是我的脚本(我还有一个settings.gradle文件,rootProject.name='stomp'):

运行gradle publish将提供下一个输出:

C:\Workspace\git repositories\OpenEdge\stomp.git>gradle -DDLC=C:\OpenEdge\116\DLC publish:generatePomFileForMavenJavaPublication:compileJava-update :processResources-UP-DATE:classes-UP-DATE:jar-UP-DATE :PublishMavenJavaPublicationToEventRepository找不到元数据 be.mips:stomp:1.4.0-SNAPSHOT/maven-metadata.xml在远程 ()上传 无法传输项目。mips:stomp:pom:1.4.0-20161227.115652-1 从/到远程 ():不能 写入资源 'be/mips/stomp/1.4.0-SNAPSHOT/stomp-1.4.0-20161227.115652-1.pom' 上传 无法传输工件。mips:stomp:jar:1.4.0-20161227.115652-1 从/到远程 ():不能 写入资源 'be/mips/stomp/1.4.0-SNAPSHOT/stomp-1.4.0-20161227.115652-1.jar' 上传 无法传输项目。mips:stomp:pl:1.4.0-20161227.115652-1 从/到远程 ():不能 写入资源 'be/mips/stomp/1.4.0-SNAPSHOT/stomp-1.4.0-20161227.115652-1.pl' :PublishMavenJavaPublicationToEventRepository失败

失败:生成失败,出现异常

  • 错误:任务的执行失败:“PublishMavenJavaPublicationToAventRepository”

    未能将发布“mavenJava”发布到存储库“maven” 未能部署项目:无法将项目传输到远程。mips:stomp:pom:1.4.0-20161227.115652-1从/到远程 ():不能 写入资源 'be/mips/stomp/1.4.0-SNAPSHOT/stomp-1.4.0-20161227.115652-1.pom'

  • 尝试:使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获得更多日志输出

构建失败

总时间:1.089秒

我注意到的第一件事是有这些我不需要的java任务compileJava,:processResource,:classes,:jar

基本上,我有一个build.xml ant文件,可以做我想做的一切。但是ant中的依赖关系管理非常差。所以我决定将Gradle与Ant结合使用。我想让Gradle帮我做依赖关系管理。到目前为止,下载依赖项似乎工作正常(必须尝试使用PL而不是jar)。但是发布一个罐子以外的东西,你是怎么做到的


阅读了大量Gradle在线文档,但所有示例似乎都基于java。

如果不需要编译java代码,请使用插件而不是
java
。您还应该从组件中删除
。java

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

publishing {
  publications {
    mavenJava(MavenPublication) {
      artifact stompProgressLibraryFile
    }
  }
}
您的下一个错误“无法写入资源”很可能不是gradle问题,请检查对存储库的写入访问权限。在发布到远程存储库之前,请尝试在本地存储库中发布:

应用插件:

apply plugin: "maven"
执行任务
安装

$ ./gradlew install

谢谢!已从components.java中删除。接下来我将尝试基本插件。奇怪的是,这些事情并没有在在线Gradle用户指南中得到很好的记录。。。
$ ./gradlew install