Запуск файла Java JAR с включенными внешними инструментами - PullRequest
0 голосов
/ 23 февраля 2012

В eclipse у меня есть проект Java, который запускает внешнюю программу (.exe) из основного метода. Эта программа находится в папке ext под рутиной проекта на том же уровне, что и исходная папка. Теперь, когда я запускаю эту программу из Eclipse, она работает как шарм. Но когда я экспортирую файл JAR, это не так. Я получаю файл jar, который содержит папку ext, но я все еще получаю исключение FileNotFoundException. Я действительно думал об использовании getClass.getResource ('path'), но я не могу использовать это из статического метода main.

Есть идеи?

Ответы [ 2 ]

0 голосов
/ 23 февраля 2012

Попробуйте

Foo.class.getResource("...");
0 голосов
/ 23 февраля 2012

Чтобы обойти статическую проблему, вы можете использовать ClassLoader.getSystemClassLoader (). GetResource ('path')

Это может работать или не работать в зависимости от того, как вы запускаете .exe (это не так)Теперь у меня нет пути к файлу, поскольку он находится внутри .jar, и я предполагаю, что его не будет) - наличие .exe внутри .jar кажется мне странным.Почему бы не оставить его вне .jar и указать его местоположение с помощью параметра конфигурации?Это имело бы гораздо больше смысла.

...