Java – Установка пути к классам из командной строки

Узнайте, как использовать параметр -classpath или -cp для установки пути к классам Java из командной строки в ОС Windows и Linux.

1. Путь к классам Java

  • Classpath — это список каталогов, в которых среда выполнения Java ищет классы и другие файлы ресурсов во время выполнения программы.
  • По умолчанию classpath — это текущий рабочий каталог.
  • Установка переменной среды CLASSPATH или использование параметра командной строки -classpath переопределяет значение по умолчанию.
  • Если мы хотим включить текущий рабочий каталог в classpath, мы должны включить «.»(точку) в список путей.
  • Значение classpath, заданное из командной строки, является временным и недоступно, если мы откроем новую командную строку.
  • Если мы хотим установить classpath на постоянной основе, то нам следует установить classpath как переменную среды в Windows. В Linux установите значение в профиле bash.

Разделители пути зависят от платформы

Разделитель между двумя путями в значении classpath зависит от платформы.

В Windows разделителем пути является точка с запятой( ; ), а в Linux — двоеточие( : ).

2. Установка Classpath из командной строки

Есть два способа:

  • Используйте параметр -classpath или -cp, чтобы указать расположение classpath при запуске приложения или инструмента Java.
java -cp .;c:/jars demo-application.jar
  • Сначала используйте команду set CLASSPATH, а затем запустите приложение или инструмент Java в том же окне командной строки.
    Он будет искать классы/ресурсы в указанных расположениях classpath.
    Записи Classpath, которые не являются ни каталогами, ни архивами(файлами .zip или .jar), ни *, игнорируются.
set CLASSPATH .;c:/jars

Приведенные выше примеры специфичны для Windows. Для Linux используйте двоеточие в качестве разделителя пути.

3. Подстановочные знаки в Classpath

Обычно мы включаем в classpath два вида ресурсов: классы и jar-файлы.

  • Чтобы включить классы, укажите полный путь к папке, в которой находятся классы. .(точка) представляет текущий каталог.
  • Чтобы включить файлы jar, укажите полный путь к папке, где находятся файлы jar. Добавьте подстановочный знак звездочки(*) для добавления всех файлов jar в этом каталоге.

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

java -cp c:/temp/lib applation.jar //includes all classes in the directory 'c:/temp/lib'java -cp c:/temp/lib/* application.jar //includes all jars in the directory 'c:/temp/lib'java -cp c:/temp/lib;c:/temp/lib/* application.jar //includes all classes and jars

4. Как очистить значение Classpath

Чтобы сбросить ранее заданное значение classpath, используйте эту команду, чтобы очистить его значение, используя пустое значение, назначенное переменной.

set CLASSPATH=
Прокрутить вверх