私は新しい gradle ユーザーとして gradle ビルドを作成していますが、過去に maven を使用したことがあります。
Mavenリリースプラグインのアクションを再現しようとしています:
- ブランチ バージョンをリリース番号に変更 (svn でコミット)
- タグを作成する (svn で)
- Nexus OSS にリリース タグをデプロイする
- ブランチ バージョンを新しいスナップショット番号に変更します (svn でコミット)
ご覧のとおり、私は次のものを使用しています:
- バージョン管理リポジトリとしての Nexus OSS
- scmとしてのSVN
- グラドル (2.8)
次の 2 つのプラグインを使用して目的を達成しようとしています。
-
- ブランチ バージョンをリリース番号に変更 (svn でコミット)
- タグを作成する (svn で)
- ブランチ バージョンを新しいスナップショット番号に変更します (svn でコミット)
コマンド ライン: gradle リリース
Nexus にデプロイするMaven Publish プラグイン:
コマンド ライン: gradle パブリッシュ
リリースを生成し、それをワンショットで Nexus に自動的にデプロイする方法はありますか?
以下は私のbuild.gradleです:
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
]
}