0

Eclipse Luna と Eclipse Luna 用の Gradle プラグインを使用しています (Pivotal の Gradle IDE Pack 3.6.x を使用)。Gradle をサポートする単純な Java プロジェクトを作成しました。私のbuild.gradleの下

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'artifactory'

buildscript {
  repositories {
    maven { url 'http://dl.bintray.com/jfrog/jfrog-jars' }
    mavenCentral()
  }

  dependencies {
    classpath(group: 'org.jfrog.buildinfo', name: 'build-info-extractor-gradle', version: '2.2.4')
  }
}

version = '1.0'

repositories {
  maven { url 'http://maven.restlet.com' }
  mavenCentral()
}

dependencies {
  compile group: 'com.cloudit4', name: 'cit4-util-lib', version: '1.0'
  compile group: 'org.restlet.gae', name: 'org.restlet', version: '2.3.2'
  compile group: 'org.restlet.gae', name: 'org.restlet.ext.servlet', version: '2.3.2'
}

// Artifactory...
artifactory {
  contextUrl = 'http://192.168.245.1:8081/artifactory'   //The base Artifactory URL if not overridden by the publisher/resolver
  publish {
    contextUrl = 'http://192.168.245.1:8081/artifactory'   //The base Artifactory URL for the publisher
    //A closure defining publishing information
    repository {
        repoKey = 'libs-release-local'   //The Artifactory repository key to publish to
        username = 'admin'          //The publisher user name
        password = 'mypass'       //The publisher password
    }
  }
  resolve {
    contextUrl = 'http://192.168.245.1:8081/artifactory'   //The base Artifactory URL for the resolver
    repository {
        repoKey = 'repo'  //The Artifactory (preferably virtual) repository key to resolve from
    }
  }
}

お気づきかもしれませんが、Artifactory を使用して独自のアーティファクト (ローカル ライブラリ、cit​​4-util-lib) をホストしています。通常、私は Google App Engine ライブラリを使用するプロジェクトに取り組んでおり、gradle 用の appengine プラグインを使用して Gradle にライブラリを含めることが何度もありました。しかし、ご覧のとおり、今回はそうではありません。どの依存関係も、Google App Engine ライブラリに依存していません。しかし、Gradle 依存関係の更新を実行すると、Google App Engine ライブラリが依存関係に含まれます。誰かがこの種の行動を見たことがありますか?gradle はプロジェクトに含めるライブラリをどこで探しますか? build.gradle ファイルで明示的に設定されているのは依存関係だけですか、それとももっとありますか?

4

1 に答える 1

0

依存関係クロージャーに依存関係を入れると、gradle はそれらの依存関係のすべての依存関係を含めます。( https://docs.gradle.org/current/userguide/artifact_dependencies_tutorial.htmlで「推移的な依存関係」を探します)

org.restlet.gae 依存関係の古いバージョンの pom を見ると: https://mvnrepository.com/artifact/org.restlet.gae/org.restlet/2.3.1/pom壊れたリンク を見ることができますappengine の依存関係。そこから来ていると思います。

于 2015-06-02T17:32:09.593 に答える