Подтвердить что ты не робот

Как добавить внешние библиотеки и javadoc в gradle с IntelliJ?

Я создал проект Java с IntelliJ и Gradle. У меня есть файл build.gradle в моем корневом проекте, и я могу скомпилировать и запустить мое приложение.

Однако... Я использую библиотеку Java, которая поставляется с источниками и javadoc zip файлом. Если я в своем исходном коде и хочу перейти к объявлению класса или метода из этой библиотеки, IntelliJ отображает файл .class вместо исходного файла .java, предоставленного в zip.

Как я могу сказать gradle использовать источники и javadoc zips, поставляемые с внешней библиотекой?

4b9b3361

Ответ 1

Я не уверен, что ваша библиотека хранится в репозитории maven или нет. Я предполагаю, что это так.

Я знаю два способа импорта проекта gradle в IntelliJ. Первый из них - мастер "Импорт проектов..." от IntelliJ, который работает хорошо. Но они не импортируют javadoc jars, если они существуют. По крайней мере, я никогда не справлялся с этим.

Второй метод использует плагин идеи в gradle 2.1. Плагин генерирует проект для вас. Таким образом я получил javadoc внутри. Полностью рабочий пример для 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
    }
}

Вы можете вызвать gradle cleanIdea idea, который создает ваш проект для IntelliJ.

Если ваша библиотека не хранится в репозитории maven, вы можете просто установить связь, в которую вы ее загрузите. Это позволит вам использовать описанный выше метод.

Ответ 2

Это не Gradle, вам нужно указать, где находятся источники. Это IntelliJ.

Файл → Структура проекта → Модули → Выберите правильный модуль, если у вас более одного → Вкладка "Зависимости" → Нажмите знак "+" внизу → Выбрать баннеры или каталоги → Выберите каталог, в котором хранятся ваши источники /javadocs jars.

IntelliJ увидит, что они являются javadoc и источниками и соответствующим образом индексируют их.

enter image description here

Ответ 3

Я использую intellij и gradle для создания моих проектов java. Это будет очень просто, выполнив следующие простые шаги:

  • Сначала на том же уровне, что и ваш каталог src, добавьте "каталог" с именем "libs". введите описание изображения здесь

  • Добавьте ваши файлы jar в этот каталог "libs" (это делает ваш код переносимым).

  • Выполните следующие действия:
  • Выберите "Структура проекта" в меню "Файл".

  • Выберите модули, которые вы хотите добавить новые банки на левой панели.

    вкладка "Зависимости".
введите описание изображения здесь '+' → JAR или каталоги и добавьте файлы jar в папку \libs.

введите описание изображения здесь

  • В файле gradle.build в разделе зависимостей добавьте:

    зависимости {   компилировать файлы ('libs/ "nameOfJarFile".jar') } введите описание изображения здесь

  • Хотя это необязательно, хорошей практикой является недействительность кэширования и перезагрузка в какой-то момент. введите описание изображения здесь

Ответ 4

Библиотеки не могут быть напрямую использованы в любой программе, если они не добавлены в файл проекта gradle.

Это можно легко сделать в интеллектуальных IDE, таких как inteli J.

1) Сначала, как соглашение, добавьте имена папок "libs" в ваш файл src проекта. (это можно легко сделать с помощью самой IDE)

2), затем скопируйте или добавьте файл библиотеки (например:.jar файл) в папку с именем "libs"

3) теперь вы можете увидеть файл библиотеки внутри папки libs. Теперь щелкните правой кнопкой мыши на файле и выберите "Добавить как библиотеку". И это исправит все соответствующие файлы в вашей программе, и библиотека будет доступна для вашего использования.

Обратите внимание:

Всякий раз, когда вы добавляете библиотеки в проект, убедитесь, что проект поддерживает библиотеку