【问题标题】:How to download dependency sources for Gradle project in IDEA?如何在 IDEA 中下载 Gradle 项目的依赖源?
【发布时间】:2012-09-24 23:40:48
【问题描述】:

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

【问题讨论】:

标签: intellij-idea gradle


【解决方案1】:

以下配置有问题:

主意 { 模块 { // 如果你讨厌浏览 Javadoc 下载Javadoc = false // 并且喜欢阅读资源 :) 下载源 = true } } 存储库{ ma​​venLocal() mavenCentral() }

当删除 mavenLocal() 源时下载并附加。

【讨论】:

  • 我也遇到了缺少源的问题,我发现,如果工件已经在本地 maven 存储库中,那么 gradle 就让它保持原样,并没有尝试加载源。当我从本地 maven 存储库中删除工件时,gradle 使用源重新下载它们(但没有将它们放在本地 maven 存储库中,而是放在它自己的缓存中)。
【解决方案2】:

我注意到,当您已经下载了一个 jar 时,它的源代码在更改 build.gradle 后没有下载。

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

【讨论】:

    【解决方案3】:

    如果你需要保留mavenLocal()存储库由于依赖于快照jar(或其他一些原因),你可以使用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
    

    【讨论】:

      【解决方案4】:

      对于 Kotlin DSL:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-03-15
        • 2016-09-13
        • 2023-04-08
        • 1970-01-01
        • 2023-03-06
        相关资源
        最近更新 更多