Создание и подключение библиотеки

Последнее обновление: 21.09.2025

Если мы хотим некоторый функционал повторно использовать в различных проектах или распространять для использования другими разработчиками в их проектах, то мы можем оформить этот функционал в виде библиотеки. В Java популярным форматом распространения библиотеки является JAR-файл. Рассмотрим, как мы можем создать такую библиотеку и подключить ее в свой проект.

Компиляция классов

Создадим простейшую библиотеку с одним классом, который будет выполнять математические операции. Сначала определим на диске папку для проекта. Например, в моем случае это папка workspace/java/mathlib. В папке проекта создадим каталог math, а в нем - файл Operation.java. То есть у нас будет класс Operation, который будет принадлежать пакету "math" (поэтому внутри проекта мы помещаем файл Operation.java в папку "math").

В файле Operation.java определим следующий код:

package math;

public class Operation {
    public static int add(int a, int b) {
        return a + b;
    }

    public static int subtract(int a, int b) {
        return a - b;
    }
}

Сначала нужно скомпилировать этот файл в класс - файл с расширением .class. Для этого перейдем в консоли в корневой каталог проекта (в моем случае workspace/java) и выполним следующую команду:

javac -d . math/Operation.java

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

Создание JAR-файла

Теперь, когда у нас есть скомпилированные классы, можно упаковать их в JAR-файл. Для этого применяется утилита jar:

jar -cvf mathlib.jar math/

Параметры утилиты jar:

  • -c: создает новый JAR-файл

  • -v: выводит подробную информацию о процессе (verbose)

  • -f: устанавливает имя создаваемого файла (mathlib.jar)

  • math/: каталог, который нужно добавить в архив (содержит скомпилированные классы)

В результате выполнения этой команды в каталоге появится файл mathlib.jar, который содержит скомпилированные классы (класс Operaton). Полный вывод команды:

eugene@Eugene:/workspace/java/mathlib$ jar -cvf mathlib.jar math/
added manifest
adding: math/(in = 0) (out= 0)(stored 0%)
adding: math/Operation.class(in = 306) (out= 217)(deflated 29%)
adding: math/Operation.java(in = 187) (out= 101)(deflated 45%)
eugene@Eugene:/workspace/java/mathlib$ 

Подключение JAR-файла к программе на Java

Теперь, когда у нас есть библиотека mathlib.jar, создадим отдельный проект и используем ее. Для проекта определим на диске какую-нибудь новую папку с файлом Program.java. Пусть в этом файле будет следующий код:

import math.Operation;   // подключаем класс из библиотеки

class Program{

    public static void main(String[] args) {
        
        int sum = Operation.add(5, 3);
        System.out.println("Sum: " + sum); // Sum: 8
    }
}

Здесь с помощью выражения импорта подключаем класс "math.Operation" (класс Operation располагается в пакете "math") и затем используем его в программе, вызывая один из его методов.

Также скопируем файл библиотеки mathlib.jar в папку проекта, чтобы не прописывать полный путь к библиотеке. То есть в папке проекта у нас будет два файла:

  • Program.java

  • mathlib.jar

Чтобы скомпилировать файл Program.java, компилятору нужно знать, где найти класс Operation. Для этого при компиляции можно использовать опцию -cp:

javac -cp mathlib.jar Program.java

Параметр -cp mathlib.jar указывает, что компилятор должен искать классы не только в текущем каталоге, но и в файле mathlib.jar (jar-файл выступает в роли каталога).

После успешной компиляции можно запустить программу, также указав путь к JAR-файлу:

// для Linux
java -cp mathlib.jar:. Program

// для Windows
java -cp mathlib.jar;. Program

Для выполнения программы здесь применяется параметр -cp mathlib.jar:. (для Linux) или -cp mathlib.jar;. (для Windows), который указывает, что путь к классам должен включать "mathlib.jar" и текущий каталог ("."). Это важно, так как JVM должна найти и Program.class (который располагается в текущем каталоге), и Operation.class (который располагается в архиве mathlib.jar).

И после запуска мы увидим результат работы программы:

eugene@Eugene:/workspace/java/hello$ java -cp mathlib.jar:. Program
Sum: 8
eugene@Eugene:/workspace/java/hello$ 

Использование в IDE (IntelliJ IDEA, Eclipse)

Большинство разработчиков используют интегрированные среды разработки (IDE), где процесс подключения JAR-файлов значительно проще.

Установка в IntelliJ IDEA:

  1. Откройте пункт меню File -> Project Structure...

  2. Перейдите в раздел Modules и выберите ваш модуль.

  3. Нажмите на вкладку Dependencies.

  4. Нажмите + и выберите JARs or directories....

  5. Найдите файл jar-библиотеки и нажмите "OK".

Установка в Eclipse:

  1. Кликните правой кнопкой мыши по вашему проекту в Package Explorer.

  2. Выберите Build Path -> Configure Build Path....

  3. Перейдите на вкладку Libraries.

  4. Нажмите Add External JARs....

  5. Найдите файл jar-библиотеки и нажмите Open.

После этих шагов IDE автоматически добавит JAR-файл в путь компиляции и запуска.

Помощь сайту
Юмани:
410011174743222
Номер карты:
4048415020898850
Morty Proxy This is a proxified and sanitized view of the page, visit original site.