当前位置: 首页 > 知识库问答 >
问题:

gradle发布插件maven发布插件

酆景辉
2023-03-14

我以一个新的gradle用户的身份创建gradle版本,但我过去曾与maven合作过。

我试图重现maven发布插件的动作:

  • 将分支版本更改为发行号(在svn提交)

如您所见,我正在使用:

  • Nexus OSS作为版本控制库
  • SVN作为scm
  • Gradle(2.8)

我正试图通过这两个插件实现我的目标:

>

  • 将分支版本更改为发行号(在svn提交)
  • 创建标签(位于svn)
  • 将分支版本更改为新快照编号(在svn提交)

命令行:gradlerelease

要部署到Nexus的Maven发布插件:

命令行:gradlepublish

你知道我如何生成一个发布版本并一次自动将其部署到Nexus吗?

下面是我的身材。格拉德尔:

plugins {
    id 'net.researchgate.release' version '2.3.4'
}

apply plugin: 'maven-publish'


/*------------------------
----- PUBLISH PLUGIN -----
--------------------------
https://docs.gradle.org/current/userguide/publishing_maven.html
--------------------------*/
publishing {
    publications {
        maven(MavenPublication) {
            groupId mavenGroup
            artifactId mavenArtifact
            version version

            from components.java
        }
    }
    repositories {
        maven {
            if(project.version.endsWith('-SNAPSHOT')) {
                url "${nexusUrl}/content/repositories/repo-snapshots"
            } else {
                url "${nexusUrl}/content/repositories/repo-releases"
            }
            credentials {
                username nexusUsername
                password nexusPassword
            }
        }
    }
}

/*------------------------
----- RELEASE PLUGIN -----
--------------------------
https://github.com/researchgate/gradle-release
--------------------------*/
release {
    failOnCommitNeeded = false 
    failOnUnversionedFiles = false

    scmAdapters = [
        net.researchgate.release.SvnAdapter
    ]
}

共有1个答案

白光耀
2023-03-14

您需要设置两个任务之间的依赖关系。这可以通过在构建中添加这一行来实现。格雷德尔

afterReleaseBuild.dependsOn publish

发布插件有两个任务,这两个任务正好用于在发布过程中挂接其他任务,即发布前构建发布后构建。此任务(以及您设置的依赖项)在生成任务之前或之后执行。

https://github.com/researchgate/gradle-release#custom-释放步骤

 类似资料:
  • 我试图使用目标 release:prepare 生成一个版本,但是当我在 Eclipse 上运行它时,我得到了错误: 无法执行目标org.apache.maven.plugins:maven-estes-plugin:2.0-beta-7:项目mwFramework上的准备(default-cli):无法运行目标清理验证:执行过程中出错。无法运行程序“mvn”(在目录“/home/gnng/Dev

  • 我试图释放,但失败了 MVN发布:执行 错误是 部署失败:未在POM inside distributionManagement元素或-DaltDeploymentRepository=id::layout::url参数中指定repository元素 pom。xml 我不明白这个问题。通过部署插件部署到快照存储库工作正常

  • 所有POM都有作为它们的版本,也在dependencies标签下。它通过上传到Nexus repo。 我们最近开始做。因此,所有20个父POM现在都是和版本,因为它们都位于nexus中。所有标记现在都指向 开发人员不想指向发布版本。他们需要来自同行的edge开发版本,不管它是否不稳定。 SCM只希望指向版本,因为他必须每周执行一次,但由于指向快照版本而失败。 现在我知道了版本插件,但问题是,我应该

  • 我们在maven发行版和maven版本插件上有一个问题。在詹金斯,我们想做释放自动按下一个按钮。为了消除快照依赖关系,我们希望使用maven versions插件。假设我们有两个项目A(最新版本0.0.1,最新快照0.0.2-快照)和项目B,它们依赖于Projecta-0.0.2-快照,我们希望发布项目B,我们如何将项目Bs依赖项升级到最新可用的发布版本?maven versions插件目标“us

  • null 现在,当我使用mvn从Jenkins内部运行maven release插件时,我仍然得到以下信息: 不显示错误 按预期创建SVN标记 然后在部署期间,它失败,出现上述错误 正如我提到的,快照部署经常发生并且没有错误,因此settings.xml、distributionManagement和Nexus权限似乎都是正常的。 我能够手动访问 我已经用和进行了检查,似乎一切正常 有什么想法吗?

  • CMS发布插件开发 使用“后台»工具&开发»开发»CMS发布插件”可快速生成插件 我们用个示例来演示如何制作插件,首先确定我们的需求:将采集的文章发布到wordpress程序里 输入插件名称:wordpress文章入库,CMS程序选择wordpress,插件功能标识:article(表示文章入库),作者版权填你自己的 然后添加参数,什么是参数呢?参数在界面中是可视化的控件,可绑定或输入数据,方便用