2015-11-05 2 views
0

Я создал приложение Java в Netbeans с помощью swing, он отлично справляется со всеми вещами, он также создает папку и внутри этой папки создает файл слов в миллисекундах и 2 изображения jpeg.Экспортированный JAR не создает файлы, которые он должен

Если я запускаю приложение в Netbeans, он работает как expeted, создает папку и файлы, никаких проблем с ней.

Но когда я экспортирую его как банку, банк работает отлично, а также создает папку, но не создаст документ слова или файлы изображений.

Я также попытался изменить путь для файлов, но не создаст их.

Я проверил разрешения в свойствах окна для экспортированной банки и все они.

Я использую apache poi для создания документа Word и диаграммы jfree для создания изображений, я экспортирую его с помощью меню «clean and build» в netbeans.

Я могу предоставить дополнительную информацию, если необходимо, спасибо за чтение.

+1

Существует много разных причин, по которым программы могут вести себя по-разному. Он может работать под другой JVM. Другой справочник с пусковым током часто меняет ситуацию. Запустите в терминале, чтобы вы были уверены в каких-либо исключениях. Добавьте дополнительную регистрацию, если необходимо, чтобы проверить, что функции для генерации файлов по-прежнему вызываются. – WillShackleford

+0

Спасибо за ваш ответ, я запустил банку с командным окном, и это приводит к тому, что проблема в том, что приложение не находит ресурсы, они там, я распаковываю банку, чтобы проверить ее. Я получаю исключение, не найденное в файле, я пытался изменить путь в своем проекте, но он все тот же :(Я ищу больше информации, но если вы можете мне помочь. – JuanDeLaMora

+0

Обнаружил мою проблему, я изменил ее внешний вид для ресурсов, теперь это объясняется в разделе ответов. Теперь он работает так, как ожидалось, спасибо за вашу помощь. – JuanDeLaMora

ответ

0

Благодаря WillShackleford

Ну я открыл командную строку и запустить банку с «Java -jar myJar.jar» команда, я получил исключение, сброшенную и я мог видеть проблемы, не было поиск изображения.

Проблема заключалась в том, как я закодированы, чтобы получить ресурсы, это было так:

InputStream img = new FileInputStream("src/images/image.jpg");

Но правильный способ вызова ресурса:

InputStream img = InputStream.class.getResourceAsStream("/images/image.jpg");

Я удалил 'src', поскольку эта папка не существует в файле Jar, а '/' используется для обозначения корня jar.

Смежные вопросы