Распространение JxBrowser и демо - PullRequest
1 голос
/ 02 мая 2019

Я скачал демонстрационную версию JxBrowser-6.23.1 и заметил, что демонстрационный браузер jxbrowserdemo.jar в каталоге \demo\ по-прежнему работает даже после удаления всех библиотек, специфичных для платформы, из каталога \lib\ и просто оставив1,116КБ jxbrowser-6.23.1.jar.

Я предполагаю, что файлы для конкретной платформы в папке \lib\ являются двоичными файлами CEF, поэтому мне интересно, как JxBrowser удалось распределить CEF в двух файлах размером чуть более 1 мегабайта вразмер?(1116 КБ - jxbrowser-6.23.1.jar\lib\) и 104 КБ - jxbrowserdemo.jar\Demo\))

Очевидно, что я что-то здесь упускаю, но как работает демонстрационный браузер без ссылкив библиотеки CEF для конкретной платформы?

(я на 64-битной машине с Windows 10)


Edit

Создание тестового проекта в IntelliJтакже дает те же результаты, удаление определенных кроссплатформенных библиотек не влияет на работу браузера, и все, что мне нужно, это две маленькие библиотеки ...?

1 Ответ

2 голосов
/ 03 мая 2019

Похоже, что бинарные файлы Chromium уже распакованы в какую-то папку, например, ~ \ AppData \ Local \ JxBrowser \ browsercore-69.0.3497.12.6.23.1 \

Вы должны увидеть эту папку в сообщениях журнала JxBrowser INFO: Chromium binaries dir: ... (чтобы включить ведение журнала, передайте параметр JVM -Djxbrowser.logging.level=ALL)

JxBrowser сначала проверяет это местоположение, и только если файлы там не найдены, пытается извлечь их из файлов JAR, специфичных для платформы.

Кроме того, JxBrowser не использует CEF двоичные файлы. Библиотеки jxbrowser-win32.jar, jxbrowser-win64.jar, jxbrowser-mac.jar, jxbrowser-linux64.jar являются частью библиотеки JxBrowser. Они содержат бинарные файлы хрома для соответствующей платформы.

...