2016-09-13 8 views
10

"コンパイルグループ"と "コンパイル"の違いは何ですか?依存関係を定義する別の方法は?build.gradle:コンパイルグループ、コンパイル、ビルドスクリプト、クラスパス

例:

compile group: 'org.slf4j', name: 'slf4j-jcl', version: '1.7.21' 

と私は、これも動作しますと思う:

compile("org.slf4j:slf4j-jcl:1.7.21") 

私は再び宣言mavenCentral()を持っており、他の依存関係がbuildscriptブロック内のブロックのはなぜ?

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath("org.springframework.boot:spring-boot-gradle-plugin:1.4.0.RELEASE") 
    } 
} 

私の見解では、何かをコンパイルするとクラスパスになりますか?

+0

を構築しようとしているプロジェクトの依存関係を宣言しながら、自分自身を構築し、あなたのGradleの依存関係を宣言しGrade Dependency Management Basics

を見ます同じ。 'dependencies'ブロックは' buildscript'ブロック内にある必要はありません。 – Whymarrh

+0

の 'buildscript'ブロックに、gradleビルドスクリプトの依存関係を指定しています。それはselfです(build.gradleファイルのコンパイル時に使用されます)。これは、ライブラリをビルドしたいときに便利ですが、アプリケーションでは必要ありません。たとえば、ビルドにsshライブラリを使用したいかもしれませんが、アプリケーションはそれを必要としません。 – Aarjav

答えて

8

compileは、ビルドしているプロジェクトの外部依存関係を指定します。 compileには、グループ、名前、バージョンが必要です。これらは省略形"group:name:version"を使用して指定することができます。 buildscriptブロックが通常依存関係のブロックを使用すると、compile` `の2つのバージョンが同義であり、正確に振る舞う

関連する問題