2012-10-04 130 views
38

看來,eclipse插件使用下面的機制來做到這一點:如何在IDEA中下載Gradle項目的依賴項源?

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

eclipse { 
    classpath { 
     downloadSources=true 
    } 
} 

,但我找不到這個想法插件對應的一個選項。我錯過了什麼?

這裏的的build.gradle文件:

apply plugin: 'groovy' 
apply plugin: 'idea' 

repositories { 
    mavenCentral() 
    mavenRepo name: "Grails", url: "http://repo.grails.org/grails/repo/" 
} 

dependencies { 
    groovy 'org.codehaus.groovy:groovy-all:2.0.4' 
    compile 'org.slf4j:slf4j-log4j12:1.6.6', 'postgresql:postgresql:9.1-901.jdbc4', 'net.sourceforge.nekohtml:nekohtml:1.9.16' 
    ['core', 'hibernate', 'plugin-datasource', 'plugin-domain-class'].each { plugin -> 
     compile "org.grails:grails-$plugin:2.1.0" 
    } 
} 

idea { 
    module { 
     downloadJavadoc = true 
     downloadSources = true 
    } 
} 

// Fat Jar Option (http://docs.codehaus.org/display/GRADLE/Cookbook#Cookbook-Creatingafatjar) 
jar { 
    from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } } 
} 

task wrapper(type: Wrapper) { 
    gradleVersion = '1.0' 
} 
+0

你的問題回答了我在Eclipse中如何做到這一點的問題。謝謝! – qwertzguy

+0

Gradle包裝的用戶,看到這個答案:https://stackoverflow.com/a/46596203/924597 – Shorn

+0

@Shorn不,https://stackoverflow.com/a/46596203/924597只涉及_Gradle_來源,但不是來源該項目的編譯依賴項。 – jschreiner

回答

16

我有具有以下配置問題:

 
idea { 
    module { 
     // if you hate browsing Javadoc 
     downloadJavadoc = false 

     // and love reading sources :) 
     downloadSources = true 
    } 
} 

repositories { 
    mavenLocal() 
    mavenCentral() 
} 

當去除mavenLocal()源被下載和連接。

+4

我也遇到了丟失源代碼的問題,我發現如果這個工件已經存在於本地的maven倉庫中,那麼gradle只是將它保留原樣,並沒有嘗試加載源代碼。當我從本地Maven回購庫中刪除工件時,Gradle用源代碼重新下載它們(但沒有將它們放置在本地Maven回購站中,而是放置在它自己的緩存中)。 – Michal

2

我注意到,當你已經有一個jar下載然後它的來源和更改build.gradle後不下載。

刪除從我的主目錄.m2目錄並呼籲gradle這個幫助。

相關問題