2015-10-19 4 views
0

Я разработал приложение JavaFX и использовал собственный инструмент для упаковки (включая Inno Setup 5 и WiX) для создания файлов .exe и установщиков. Программа представляет собой самодостаточное приложение, означает, что у нее есть собственный JRE на борту и некоторые внешние .jars в папке/lib. Когда я его устанавливаю и выполняю, он отлично работает на моем собственном компьютере (Windows 7) и некоторых других машинах, но, похоже, не работает в Windows 10 и Windows Server 2008 R2. Также некоторые машины Windows 7 не могут выполнить его. Сообщение об ошибке после нажатия на значок запуска: «Ошибка из-за исключения в основном классе». Он больше не говорит. Но когда я выполняю файл jar двойным щелчком или с помощью командной строки, он запускается без каких-либо дампов ошибок в командной строке, все работает нормально.Файл JavaFX .exe Не удалось из-за исключения в основном классе

Любая идея, что такое ошибка? Я подозреваю, что путь к курсу, но я точно не знаю.

Спасибо!

С наилучшими пожеланиями,

Alex

+0

Все эти 64-разрядные установки операционной системы? – janih

ответ

0

Узнали себя: вопросы были параметрами VM, которые я добавил в build.xml в Fx: Платформа/Fx: jvmarg раздел. Эти параметры были помещены в файл package.cfg, который вызывается из файла .exe для инициализации виртуальной машины.

Очевидно, что некоторые из операционных систем, которые я использовал для установки инструмента, не имели правильной настройки Java (это не касается настроек пути к классу, я также проверял это заранее), поэтому виртуальная машина потерпела крах, прежде чем была возможность создавать экземпляр инструмента, и поэтому мой собственный регистратор ошибок.

После удаления ошибки, вызванной параметрами VM (параметры для отладки, диспетчера безопасности и расположения файла политики), он работал на всех платформах Windows (7/8/10), как и следовало ожидать.