Как открыть jar файл в intellij idea
Перейти к содержимому

Как открыть jar файл в intellij idea

Правильный способ добавления внешних jar (lib / *. Jar) в проект IntelliJ IDEA

При создании нового Java-проекта в IntelliJ IDEA создаются следующие каталоги и файлы:

Я хочу настроить IntelliJ IDEA для включения JAR-файлов зависимостей в ./lib/*.jar проект. Как правильно достичь этого в IntelliJ IDEA?

Шаги для добавления внешних jar в IntelliJ IDEA:

  1. Нажмите File на панели инструментов
  2. Структура проекта ( CTRL + SHIFT + ALT + S в Windows / Linux, ⌘ + ; в Mac OS X)
  3. Выберите Модули на левой панели
  4. Вкладка Зависимости
  5. ‘+’ → JAR или каталоги

IntelliJ IDEA 15 & 2016

Файл > Структура проекта .

Файл> Структура проекта

или нажмите Ctrl + Alt + Shift + S

Настройки проекта > Модули > Зависимости > знак « + »> JAR или каталоги .

Модули> Зависимости> JAR или каталоги

Выберите файл фляги и нажмите OK, затем нажмите другую кнопку OK, чтобы подтвердить

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

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

Вы можете просмотреть файл JAR в папке «Внешние библиотеки»

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

Просто скопируйте и вставьте файл .jar в папку «libs» (или целую папку «libs»), щелкните по нему правой кнопкой мыши и выберите «Добавить как библиотеку» из списка. Это сделает все остальное .

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

Вы добавляете их как библиотеки в свой модуль.

У меня обычно есть /lib каталог в моем источнике. Я поместил все необходимые мне JAR-файлы, добавил / lib как библиотеку и включил ее в мои зависимости от модулей.

Обновление 2018 года: сейчас я пользуюсь IntelliJ 2017/2018.

Я полностью привержен Maven и Nexus для управления зависимостями.

Это путь, которым мир пошел. Каждый известный мне Java-проект с открытым исходным кодом использует Maven или Gradle. Тебе тоже следует.

Если вы строите свой проект с помощью gradle, вам просто нужно добавить одну строку в зависимости в build.gradle:

и затем добавьте папку в ваш корневой проект или модуль:

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

Тогда вы бросаете свои банки туда, и вы готовы идти 🙂

Я использую этот метод, и он хорошо работает:

1- Скопируйте и вставьте .jar файлы в libs папку.

2 Добавить compile fileTree(dir: ‘libs’, include: ‘*.jar’) в dependencies в build.gradle то все банки в libs будут включены папки ..

3- Щелкните правой кнопкой мыши по libs папке и выберите опцию «Добавить как библиотеку» из списка.

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

Это легко сделать в таких интеллектуальных средах, как Inteli J.

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

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

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

Пожалуйста, обратите внимание:

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

Некоторая большая помощь найдена здесь. Однако, я все еще не мог заставить это работать несмотря на загрузку JAR должным образом. Позже я узнал, что я случайно создал модуль в файловой структуре вместо обычной папки, и этот самый модуль был предварительно выбран в настройках проекта.

Файл -> Структура проекта -> Модули -> (выберите подходящий модуль, если у вас есть больше) -> Зависимости -> + -> JAR или библиотеки

Хотя я согласен с предыдущими ответами, важно отметить, как получить доступ к коду этих внешних библиотек.

Например, чтобы получить доступ к классу во внешней библиотеке, вам нужно использовать ключевое слово import, за которым следует имя внешней библиотеки, с точечной нотацией, пока не будет достигнут нужный класс.

Посмотрите на изображение ниже, чтобы увидеть, как я импортирую класс CodeGenerationException из библиотеки quickfixj.

Как просмотреть файл .zip в IntelliJ (или .jar и т. Д.)

Я хотел бы иметь возможность «открывать» (без разархивирования) файлы .zip или .jar в IntelliJ так же, как вы можете это сделать в Eclipse, щелкнув извилистую кнопку. Как мне сделать это с помощью IntelliJ?

4 ответа

Jar-файлы, видимые в структуре вашего проекта, которые не могут быть расширены, еще не были «добавлены» в качестве библиотек. Щелкните правой кнопкой мыши файл jar и выберите Add as Library.

Я создал новый плагин Intellij для его реализации. Он поддерживает базовые архивы и расширение tar.gz, ключевая особенность — поддержка вложенных архивов. Он был загружен в репозиторий Jetbrain. Вы можете установить его с торговой площадки плагинов. См. Дополнительную информацию на странице плагина на github. File Expander.

Хотя ответ Кристофера Пайзерта работает для архивов, которые не вложены (вам не повезло, если у вас есть EAR, содержащий WAR) утомительно, что для большинства типов архивов (за исключением JAR) вы должны добавить файл как библиотеку или зависимость из области Структура проекта раздела Настройки .

Если вы хотите, чтобы архивы использовались по умолчанию и работали с вложенными архивами, проголосуйте за эту проблему YouTrack 126376

Теперь существует подключаемый модуль Intellij , который решает эти проблемы:

Обновление: теперь он работает и для вложенных архивов . (проверено 2019.1)

Как я могу запустить Java JAR, созданный из Intellij, из командной строки

Я прочитал сообщение это SO и выполнил шаги, но все равно не могу его запустить.

Я пробовал запустить его следующим образом

Что нужно делать после этого? Что это за зависимости? Кроме того, я делюсь своим pom.xml, в котором есть несколько библиотек, необходимых для моего проекта.

enter image description here

Обычно это Directory_where_jar_is_located $ java -jar jar_file_name.jar

@CrazyCoder Я попробовал ответить на этот вопрос, но кое-что не понял. По запросу я добавил дополнительную информацию, отредактировав свой вопрос. Пожалуйста, дайте мне знать дальше.

@CrazyCoder: Как вы видите, что внутри JAR? Я попробовал стандартную утилиту Jar, которая устанавливается на Mac, но установка Java не работает. Кроме того, я не уверен, создаются ли мои зависимости внутри JAR. Как убедиться в некоторых внешних зависимостях.

@Atihska jar — это, по сути, ZIP-архив, поэтому вы можете использовать любой менеджер архивов для просмотра внутри или просто распаковать его, чтобы увидеть.

@CrazyCoder Тоже пробовал, но при распаковке получаю SparkTut.zip.cpgz . Пробовал на терминале с помощью unzip и его распаковки.

Модели проектирования, используемые в spring framework

Основы программирования на Java

Концепции JavaScript, которые вы должны знать как JS программист!

Ответы 2

Я создал тестовый проект на java, построил и выполнил jar.

Изначально структура проекта выглядела так, как показано ниже. Каталог out содержит только производственный каталог. Initial

Теперь нажмите Файл-> Структура проекта-> Артефакты. Нажмите на знак + рядом с левой навигационной панелью в верхнем левом углу.

enter image description here

Теперь нажмите на знак + и выберите Jar-> из модуля с зависимостями . Появится диалоговое окно, как показано ниже:

enter image description here

Теперь выберите Main Class , выберите radio button перед extract to the target JAR и щелкните OK . Вы увидите следующий enter image description here:

Отметьте Include in project build checkbox и щелкните Apply->Ok .

enter image description here

Щелкните Build->Build Project . Теперь вы можете видеть, что у out directory есть artifacts sub-directory , у которого будет соответствующая банка.

enter image description here

Теперь на терминале в intelliJ войдите в каталог, где находится jar, и выполните команду java -jar JAR_NAME.jar , и вы увидите, что выполняется основная функция.

По-прежнему не удается запустить его. Я получаю Error: Could not find or load main class IcebergRun

Вы упомянули свой основной класс в диалоговом окне, которое появляется после нажатия на знак + ? Также проверьте, есть ли у вас класс с main function ?

@Atihska Я создаю банку без основной функции внутри какого-либо класса. Когда я запускаю банку, я получаю сообщение об ошибке Error: Could not find or load main class .

Да у меня класс с. main, и я указал свою main после нажатия + . Пожалуйста, проверьте мои правки.

@Atihska изучает решения, которыми поделились в stackoverflow.com/q/10654120/6407858

Не могу заставить его работать. Я проверил, что мой основной класс существует. Используя $ jar tf IcebergJava.jar | grep Main , я получаю com/example/Main.class . Но по-прежнему не удалось найти или загрузить основной класс com.example.Main. Это означает чтение файла манифеста.

Поэтому я не уверен, почему мой JAR, созданный IntelliJ, не смог выполнить и получить Could not load main class , поэтому я попробовал весь свой java-проект в командной строке и сгенерировал JAR, который работал у меня.

2. Установите также следующее

4. Отредактируйте файлы кода и pom.xml. Вы можете открыть проект в IntelliJ и отредактировать.

5. MAVEN BUILD: запуск из корневого каталога вашего java-проекта.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *