如何在IDEA中下载Gradle项目的依赖项源?

时间:2012-10-04 00:24:20

标签: intellij-idea gradle

似乎eclipse插件使用以下机制来执行此操作:

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'
}

4 个答案:

答案 0 :(得分:25)

我遇到以下配置问题:

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

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

repositories {
    mavenLocal()
    mavenCentral()
}

下载并附​​加已移除的mavenLocal()来源时。

答案 1 :(得分:2)

我注意到,当你已经下载了一个jar然后它的源代码而不是在更改 build.gradle 后下载。

从我的主目录中删除 .m2 并调用 gradle 帮助。

答案 2 :(得分:1)

如果由于快照jar的依赖性(或某些其他原因)需要保留mavenLocal()存储库,则可以使用maven获取源jar。

mvn dependency:get -Dartifact=GROUP_ID:ARTIFACT_ID:VERSION:jar:sources

例如,

mvn dependency:get -Dartifact=org.springframework:spring-core:5.1.2.RELEASE:jar:sources

答案 3 :(得分:1)

对于Kotlin DSL:

plugins {
    idea
}

idea {
    module {
        isDownloadJavadoc = true
        isDownloadSources = true
    }
}