0

gradleを使用するために結び始めたばかりですが、遠くまでは行きません。助けてください。

ドキュメントに従いましたが、単一の依存関係または動作できない依存関係のみが表示されます。これが私のbuild.gradleファイルです:

apply plugin: 'java'
sourceCompatibility = 1.7
OFFICEDB_VERSION = 'JAN12R2'

repositories {
    mavenCentral()
}

dependencies {
    compile group:
            'org.hibernate:hibernate-validator:5.0.0.Alpha1',
            'javax.validation:validation-api:1.1.0.Alpha1',
            'com.exlogs.officedb:common:${OFFICEDB_VERSION}',
            'com.exlogs.officedb:officedb-service:${OFFICEDB_VERSION}',
            'com.exlogs:eventhub:1.0.0-RC1',
            'commons-httpclient:commons-httpclient:3.1'

testCompile group: 'junit', name: 'junit', version: '4.+'
}

問題はgradle build、コマンドラインに入力すると次のようになることです。

FAILURE: Build failed with an exception.

* Where:
Build file 'C:\Dev\Code\officedb\manpower\build.gradle' line: 10

* What went wrong:
A problem occurred evaluating root project 'manpower'.
> Could not create a dependency using notation: {group=org.hibernate:hibernate-validator:5.0.0.Alpha1}

しかし、ドキュメントを見ると、これは問題ないはずです。また、私が見つけたすべてのサンプル ビルド ファイルはかなり小さいか、依存関係が 1 つしかありません。大規模な商用プロジェクトに gradle を使用することについて意見を持っている人はいますか?

ありがとうアダム

4

1 に答える 1

4

依存関係ごとに構成を指定する必要があります (Maven スコープと同様にcompile、 、 など)。testCompile

dependencies {
    compile 'org.hibernate:hibernate-validator:5.0.0.Alpha1'
    compile 'javax.validation:validation-api:1.1.0.Alpha1'
    compile "com.exlogs.officedb:common:${OFFICEDB_VERSION}"
    compile "com.exlogs.officedb:officedb-service:${OFFICEDB_VERSION}"
    compile 'com.exlogs:eventhub:1.0.0-RC1'
    compile 'commons-httpclient:commons-httpclient:3.1'

    testCompile group: 'junit', name: 'junit', version: '4.+'
    testCompile 'org.mockito:mockito-all:1.9.0'
}

groupgroup: 'junit', name: 'junit', version: '4.+'は、特別なキーワードではなく、依存座標 ( ) を提供するための代替構文の一部です。

また、文字列で変数を使用するには二重引用符が必要であることに注意してください。

compile "com.exlogs.officedb:common:${OFFICEDB_VERSION}"
于 2012-11-30T14:32:37.333 に答える