Ошибка FileNotFoundException при использовании исполняемого файла Jar в Eclipse

Я работаю над заданием, которое включает использование 2 файлов txt и создание исполняемого файла jar. Часть назначения включает в себя создание исполняемого jar-файла с именем Hw2.jar, экспорт этого файла на «первый уровень каталога», затем переход к конфигурациям запуска на вкладке аргументов и вставка «java -jar hw2.jar ct.search ct. corpus "(файлы ct.search и ct.corpus являются файлами txt) Вот как это выглядит.

Вот как выглядят мои файлы проекта с файлом hw2.jar в каталоге

А вот как выглядят конфигурации запуска

Тем не менее, несмотря на выполнение этих шагов, я получаю ошибку FileNotFoundException, как описано ниже.

Исключение в потоке "main" java.io.FileNotFoundException: -jar (система не может найти указанный файл) в java.io.FileInputStream.open0 (собственный метод) в java.io.FileInputStream.open (неизвестный источник) в java. io.FileInputStream. (Неизвестный источник) в java.io.FileInputStream. (Неизвестный источник) в java.io.FileReader. (Неизвестный источник) в edu.iastate.cs228.hw2.Console.main (Console.java:29)

Я впервые пытаюсь использовать исполняемый файл jar в конфигурациях запуска, поэтому я не знаю, как именно работает этот процесс. Я был бы очень признателен за любую помощь в этом вопросе. Спасибо.

РЕДАКТИРОВАТЬ: файлы jar и txt НЕ находятся в папке src. Они находятся внутри папки проекта.


person Kyodi    schedule 18.06.2020    source источник
comment
Экспорт его как исполняемого JAR не включает файлы вне исходной папки, а файлы внутри JAR не могут быть доступны в Java как java.io.File. Поищите jar и getResourceAsStream, чтобы узнать, как адаптировать код, чтобы он работал и при упаковке в виде JAR.   -  person howlger    schedule 19.06.2020
comment
Объекты в банке не являются файлами, и к ним нельзя получить доступ с помощью файловых API, таких как FileInputStream. Используйте getResourceAsStream.   -  person greg-449    schedule 19.06.2020


Ответы (1)


Судя по вашему первому снимку экрана, похоже, что все файлы корпуса и jar находятся внутри папки src (вы можете подтвердить, если это так, если сверните папку src, щелкнув значок треугольника). Используйте вырезать и вставлять их на уровне проекта.

person Denis Fuenzalida    schedule 18.06.2020
comment
Я могу подтвердить, что файлов нет в папке src. Они находятся в папке проекта - person Kyodi; 19.06.2020