BackLogのファイルにmavenリポジトリを作成する

いまさらながらに社内用にmavenリポジトリをつくろうかとおもい、gradleなんかを調査。

プロジェクトの作成

mkdir YOUR_LIB
cd YOUR_LIB
gradle init --type java-library

mavenリポジトリを構築するための設定。リポジトリはBackLogのファイルがWebDAVを提供しているのでそれを利用。

  • pomを生成するためにgroup,versionを指定
  • WebDAVでアクセスするようにwagon-webdav-jackrabbitプラグインをつかってアクセス
    • プラグインをつかうのにconfigurationsにdeployerJarsを追記
    • dependenciesでdeployerJarsにwagon-webdav-jackrabbitを指定する。
    • repositoriesでリポジトリのURLにdav:をつける

gradleがはじめてだったので、configurationにdeployerJarsをつけるのが全然わからなかった。

apply plugin: 'java'
apply plugin: 'maven'

group = 'YOUR_GROUP'
version = '0.1.0'

repositories {
    jcenter()
    mavenCentral()
}
configurations {
    deployerJars
}
dependencies {
    compile 'org.slf4j:slf4j-api:1.7.12'
    testCompile 'junit:junit:4.12'
    deployerJars 'org.apache.maven.wagon:wagon-webdav-jackrabbit:2.9'
}


uploadArchives {
    repositories.mavenDeployer {
        configuration = configurations.deployerJars 
        repository(url: "dav:https://YOUR_SPACE.backlog.jp/dav/YOUR_PROJECT/repo/") {
            authentication(userName: "YOUR_ACCOUNT", password: "YOUR_PASSWORD")
        }
    }
}