Il semble que le plugin Eclipse utilise le mécanisme suivant pour ce faire:
apply plugin: 'Java'
apply plugin: 'Eclipse'
Eclipse {
classpath {
downloadSources=true
}
}
mais je ne trouve pas d'option correspondante pour le plugin d'idée. Qu'est-ce que je rate?
Voici le fichier 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'
}
J'ai des problèmes avec la configuration suivante:
idée { module { // si vous détestez parcourir Javadoc downloadJavadoc = false // et aimez lire les sources :) downloadSources = true } } référentiels { mavenLocal () mavenCentral () }
Une fois supprimés mavenLocal()
les sources ont été téléchargées et jointes.
J'ai remarqué que lorsque vous avez déjà téléchargé un bocal, ses sources et non le téléchargement après avoir changé build.gradle.
La suppression de . M2 de mon répertoire personnel et l'appel de gradle ont aidé.
Si vous avez besoin de conserver le référentiel mavenLocal()
en raison de dépendances sur les jars de snapshot (ou pour d'autres raisons), vous pouvez obtenir le jar source en utilisant maven.
mvn dependency:get -Dartifact=GROUP_ID:ARTIFACT_ID:VERSION:jar:sources
Par exemple,
mvn dependency:get -Dartifact=org.springframework:spring-core:5.1.2.RELEASE:jar:sources