(2)定義相依規則
當我們定義好哪裡抓取的規則後,接下來我們會介紹實際抓取jar檔的動作規則設定,在Gralde中會把抓取的規則寫在dependencies{ }區塊中。
由下面的範例我們可以知道,dependencies區塊會定義抓取{組織}{檔名}{版本}規則讓它可以抓取,complie方法會比complie group更簡潔和方便。
apply plugin: 'java'
repositories {
mavenCentral()
}
dependencies {
compile group: 'org.springframework', name: 'spring-core', version: '3.1.1.RELEASE'
compile 'org.springframework:spring-core:3.1.1.RELEASE’
}
如果我們可以將jar檔的組織與版本可以使用變數定義,會讓我們開發專案時候,更容易維護gradle的腳本與彈性
ext{
springVersion : ‘'3.1.1.RELEASE'’
springGroup : ‘'org.springframework'’
}
dependencies {
compile group: '$springGroup’ , name: 'spring-core', version: '$springVersion'
}
遞移相依(Transitive Dependency) wiki解說
當管理多個版本相依時,發生遞移相依時不需要下載可以設定為transitive = false
- 排除相依性
dependencies {
compile group: 'org.slf4j', name: 'slf4j-simple', version: '1.6.4', transitive: false
}
- 排除部分相依
dependencies {
compile('org.slf4j:slf4j-simple:1.6.4') {
exclude 'org.slf4j:slf4j-api'
}
}
程式版本動態
我們可以設定一個版本的範圍,來抓取jar檔案的範圍,下列符號
符號 | 說明 |
---|---|
[1.0, 2.0] | 版本在1.0~2.0之間 |
[1.0, 2.0[ | 版本在1.0~2.0之間,但是不等於2.0 |
[1.0, ) | 版本大於1.0以上 |
(, 2.0] | 小於或是等於2.0 |
2.+ | 大於2.0以上 |
apply plugin: 'java'
repositories {
mavenCentral()
}
dependencies {
compile group: 'org.springframework', name: 'spring-core',
version: '[3.0, 3.1['
}
留言
張貼留言