2012-10-04 41 views
38

Dường như các thực plugin sử dụng cơ chế sau đây để làm điều này:Làm cách nào để tải xuống các nguồn phụ thuộc cho dự án Gradle trong IDEA?

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

eclipse { 
    classpath { 
     downloadSources=true 
    } 
} 

nhưng tôi không thể tìm thấy một lựa chọn tương ứng cho các plugin ý tưởng. Tôi đang thiếu gì?

Dưới đây là file 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

Câu hỏi của bạn đã trả lời câu hỏi của tôi về cách thực hiện điều đó trong Eclipse. Cảm ơn! – qwertzguy

+0

Người dùng trình bao bọc Gradle, hãy xem câu trả lời này: https://stackoverflow.com/a/46596203/924597 – Shorn

+0

@Shorn Không, https://stackoverflow.com/a/46596203/924597 chỉ liên quan đến các nguồn _Gradle_, chứ không phải các nguồn của các phụ thuộc biên dịch của dự án. – jschreiner

Trả lời

16

Tôi đã có vấn đề với cấu hình sau:

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

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

repositories { 
    mavenLocal() 
    mavenCentral() 
} 

Khi gỡ bỏ mavenLocal() nguồn đã được tải về và kèm theo.

+4

Tôi đã có vấn đề với các nguồn mất tích quá và tôi phát hiện ra, rằng nếu artifact đã có trong kho lưu trữ maven địa phương, sau đó gradle chỉ còn lại nó như nó đã và không cố gắng để tải các nguồn. Khi tôi gỡ bỏ các tạo tác từ repo maven cục bộ, gradle đã tải lại chúng với các nguồn (nhưng không đặt chúng trong repo maven cục bộ, nhưng bên trong cache của nó). – Michal

2

Tôi nhận thấy rằng khi bạn đã có một chai tải xuống thì nguồn của nó và không tải xuống sau khi thay đổi build.gradle.

Xóa .m2 từ thư mục chính của tôi và gọi gradle đã giúp.

Các vấn đề liên quan