#java #javafx
#java #javafx
Вопрос:
Я пытаюсь преобразовать свой java-код в исполняемый файл, однако в этом Java-коде используется другой jar, который я написал. Этот второй jar можно легко найти, когда я запускаю приложение локально (в IDE), но не тогда, когда я создаю из него exe, тогда я больше не могу найти встроенный jar, который я добавил.
В моей среде разработки я использую следующее, чтобы в настоящее время найти нужную банку
String path = FXMLDocumentController.class.getProtectionDomain().getCodeSource().getLocation().getPath();
Затем я удаляю последнюю часть и заменяю ее на libAllInOneJar.jar
Я искал в Интернете, как я мог бы найти jar в exe, и это подсказывает мне использовать следующее
URL in = this.getClass().getResource("/AllInOneJar.jar");
или
InputStream in = getClass().getResourceAsStream("lib/AllInOneJar.jar");
Я все еще не уверен, как это поможет мне найти местоположение моей jar в созданном мной exe.
Комментарии:
1. Вы уверены, что в последнем jar при извлечении находится ваш дополнительный jar? Если нет, то убедитесь, что при упаковке вашего jar вы также включаете его зависимости.
2. Я совершенно уверен, что у него есть jar в exe. Я также использую другие библиотеки в качестве jars, и он может их использовать. Мне просто нужен путь к файлу этого конкретного jar, чтобы я мог запускать его отдельно в моем exe
3. Как вы используете этот другой файл JAR? Библиотека? Поставщик услуг? Разветвленный процесс? Что-то еще?
4. Jar, который я пытаюсь найти, используется для выполнения в cmd