web-dev-qa-db-fra.com

Comment ajouter des sources externes et du javadoc à une bibliothèque externe pour utiliser IntelliJ?

J'ai mis en place un projet Java avec IntelliJ et Gradle. J'ai un fichier build.gradle dans mon projet racine et je peux compiler et exécuter mon application.

Cependant ... J'utilise une bibliothèque Java qui est fournie avec un fichier Zip javadoc contenant les sources. Si je suis dans mon code source et que je souhaite accéder à la déclaration d'une classe ou d'une méthode de cette bibliothèque, IntelliJ affiche le fichier .class au lieu du fichier source .Java fourni dans le fichier Zip.

Comment puis-je dire à Gradle d'utiliser les sources et les zips javadoc fournis avec la bibliothèque externe?

23
kruze

Je ne sais pas si votre bibliothèque est stockée dans un référentiel Maven ou non. Je suppose que c'est.

Je connais deux manières d'importer un projet de gestion de la qualité dans IntelliJ. Le premier est l'assistant "Importer un projet ..." de IntelliJ qui fonctionne bien. Mais il n’importe pas les bocaux javadoc s’ils existent. Au moins je n'ai jamais réussi. 

La seconde méthode utilise le plugin idea in gradle 2.1. Le plugin génère le projet pour vous. De cette façon, j'ai le javadoc à l'intérieur. Un exemple pleinement fonctionnel pour un build.gradle:

apply plugin: 'Java'
apply plugin: 'idea'

sourceCompatibility = '1.7'
targetCompatibility = '1.7'

repositories {
    mavenCentral()
}

dependencies {
    compile group: 'org.Apache.commons', name: 'commons-compress', version: '1.8.1'
    compile group: 'com.google.guava', name: 'guava', version: '18.0'

    testCompile group: 'junit', name: 'junit', version: '4.11'
    testCompile group: 'org.mockito', name: 'mockito-all', version: '1.8.5'
}

idea{
    project {
        languageLevel = '1.7'
    }
    module {
        downloadJavadoc = true // defaults to false
        downloadSources = true
    }
}

Vous pouvez appeler gradle cleanIdea idea qui crée votre projet pour IntelliJ.

Si votre bibliothèque n'est pas stockée dans un référentiel Maven, vous pouvez simplement mettre en place un lien où vous la téléchargez. Cela vous permettrait d'utiliser la méthode décrite ci-dessus.

9
Sponiro

Ce n'est pas Gradle, vous devez dire où sont les sources. C'est IntelliJ. 

Fichier -> Structure du projet -> Modules -> Sélectionnez le bon module si vous en avez plusieurs -> Onglet Dépendances -> Cliquez sur le signe + en bas -> Sélectionnez les fichiers JAR ou les répertoires -> Sélectionnez le répertoire qui contient vos sources/javadocs. bocaux. 

IntelliJ verra qu'il s'agit de sources javadoc et sources et les indexera de manière appropriée.

enter image description here

8
Michael

accédez à n’importe quel fichier .class IntelliJ Decompiled de n’importe quelle bibliothèque. comme le montre l'image ci-jointe ... vous remarquerez qu'Intellij vous propose 2 options 

  1. Choisir la source - À partir du répertoire
  2. Télécharger - de Maven

 enter image description here

1
Asad Abdin

J'utilise intellij et gradle pour construire mes projets Java. Ce sera très facile en suivant ces étapes simples:

  • Tout d'abord au même niveau que votre répertoire src, ajoutez un "répertoire" portant le nom "libs" .  enter image description here

  • Ajoutez vos fichiers jar à ce répertoire "libs", (cela rend votre code portable).

  • Suis les étapes:
  • Cliquez sur Structure du projet dans le menu Fichier.

  • Sélectionnez les modules pour lesquels vous souhaitez ajouter les nouveaux fichiers JAR dans le panneau de gauche.

  • Onglet Dépendances .  enter image description here
  • '+' → JAR ou répertoires et ajoutez les fichiers jar dans le répertoire\libs.

 enter image description here

  • Dans le fichier gradle.build de la section des dépendances, ajoutez:

    dépendances { compiler des fichiers ('libs/"nameOfJarFile" .jar') }  enter image description here

  • Bien que cela ne soit pas nécessaire, il est recommandé d'invalider le cache et de le redémarrer à un moment donné .  enter image description here

0
Behrouz