#java #compilation #classpath
#java #Сборник #путь к классу
Вопрос:
Я пытаюсь понять включение сторонних jar-файлов в проект Java, используя только командную строку в Windows 10.
В частности, я пытаюсь включить файл json-20200518.jar в моем «проекте», чтобы я мог использовать java-объект JSONObject в проекте.
Мой java-файл:
package com.mypackage.example;
import org.json.JSONObject;
class Example {
public static void main(String[] args) {
// ... program logic
}
}
расположение моего файла Java (Examp.java ):
./com/mypackage/example
расположение файла jar:
./jars
с помощью cmd win10 я компилирую:
javac -cp «C:UserspfortDesktopjavajarsjson-20200518.jar » «C:UserspfortDesktopjavacommypackageexampleExamp.java «
компиляция выполнена успешно.
Выполнить:
java -cp «C:UserspfortDesktopjavajarsjson-20200518.jar » com.mypackage.example.Examp
Я получаю отчет:
Ошибка: не удалось найти или загрузить основной класс com.mypackage.example.Pokus, вызванный: java.lang.Исключение ClassNotFoundException: com.mypackage.example.Pokus
Вторая попытка:
java -cp «C:UserspfortDesktopjavajarsjson-20200518.jar » «C:UserspfortDesktopjavacommypackageexamplePokus «
Но мне возвращается то же сообщение об ошибке. Где я ошибаюсь?
Это неправильная структура?
Я не понимаю, компиляция прошла успешно, но запуск не работает.
Ответ №1:
Скомпилированный Examp.class
файл не является частью json-20200518.jar
, поэтому вам нужно будет добавить каталог, содержащий его, в командную строку. Предполагая, что это текущий каталог ( .
):
java -cp "C:UserspfortDesktopjavajarsjson-20200518.jar;." com.mypackage.example.Examp