2014-01-10 110 views
10

我試圖將org.apache.commons.lang3添加到我的版本。我已經下載了包含jar文件的目錄庫。將庫添加到gradle build

我的團隊正在使用gradle構建項目,並且我知道剛好可能會提出正確的問題。因此,我認爲構建正在做的是

  1. 複製一堆.bnds到構建目錄
  2. 編譯我們在的src/main/java的java的(通過源sourceSets.main.java.srcDirs? )

我想添加lang3庫,但我不知道該怎麼做。我可以將它轉儲到src/main/java嗎?或者我必須告訴它有關嗎?

這是我認爲從目前的build.gradle相關

ext.releaseDir = "${buildDir}/release/${tpVersion.getProgramName()}" 
ext.bundlesDir = "${releaseDir}/nucleus/bin/nucleus_java/bundles/" 

dependencies { 
    compile fileTree(dir: bundlesDir, include: '*.jar') 

bnd { 
    source sourceSets.main.java.srcDirs 
    include '**/*.bnd' 
+0

感謝您的回覆。事實證明,我們確實使用Maven,但是我不太瞭解所有這些如何工作,所以也許我的問題缺乏。其中一位代碼人今天能夠加入圖書館。 – itchmyback

回答

16

你可以聲明爲一個依賴,如果它在任何遠程資源庫中。我就是這樣做的。

但是,如果你想使用本地文件,不要把它放在src/main中。在與src相同的目錄級別上使用名爲lib或類似的額外文件夾,或者構建腳本。

然後你可以添加本地的依賴,因爲這樣品中:

repositories { 
    //central maven repo 
    mavenCentral() 
} 

dependencies { 
    //local file 
    compile files('libs/toxiclibscore.jar') 

    //dependencies from a remote repository 
    compile 'java3d:vecmath:1.3.1', 'commons-lang:commons-lang:2.6' 
} 
6

最簡單的方法就是使用Maven倉庫訪問的依賴。

您還可以直接從file dependencies從文件系統訪問此jar。

dependencies { 
    compile files('libs/a.jar', 'libs/b.jar') 
    compile fileTree(dir: 'libs', include: '*.jar') 
}