Есть ли способ встроить браузер в Java?
Есть ли способ встроить браузер в Java?
15 ответов
Начиная с JavaFX 2.0 вы можете использовать теперь веб-просмотр
Я считаю, что JWebPane станет официальным способом встроить браузер в Java-приложение. Он основан на движке с открытым исходным кодом - WebKit, который используется в браузерах Apples Safari и Googles Chrome. Подробности смотрите в этом блоге.
Вы можете попробовать это: https://jdic.dev.java.net/
Вы можете использовать SWT для вашего графического интерфейса. Его управление браузером позволяет без особых проблем встраивать IE, Mozilla или Safari (в зависимости от платформы, на которой вы работаете).
JxBrowser пока не упоминается. Он включает в себя либо Mozilla Firefox (Gecko), Apple Safari (WebKit) или Internet Explorer. Руководство программиста
Вы также можете попробовать JWebBrowser от DJ Native Swing: http://djproject.sourceforge.net/ns
Безусловно, самый надежный встраиваемый браузер, с которым я знаком, это SWT. На самом деле, он настолько гибок, что наведение JavaDoc, которое вы можете видеть в Eclipse, на самом деле является браузером, а представление JavaDoc фактически поддерживает такие вещи, как анимация!
Единственный риск при использовании SWT состоит в том, что существуют разные версии библиотеки SWT для разных платформ. Я не уверен, есть ли баночка сингла, которую вы могли бы включить, чтобы покрыть всех.
Вы можете встроить браузер в графический интерфейс Swing/AWT, используя JDIC API. Я не вижу упоминания об OS X, поэтому он может быть бесполезен для вас.
Я успешно открыл браузер с Java, используя SWT. Вы можете найти примеры кода того, как использовать SWT, чтобы открыть окно браузера. Это очень легко сделать.
Вы могли бы попробовать JEditorPane
, он не интерпретирует расширенный HTML, ни Javascript, ни расширенный CSS, но вы можете написать эту часть самостоятельно, называемую EditorKit
, Это класс / объект, к которому обращается JEditorPane или как он должен отображать свое содержимое.
Я знаю, что это возможно, потому что я пытался и потерпел неудачу (:P), но это может быть устаревшим или устаревшим, я не знаю.
Может быть, Chromium Embedded Framework - вариант для вас. Специфические для Java есть
javacef для SWT: https://github.com/wjywbs/javacef
java-cef для AWT: https://bitbucket.org/chromiumembedded/java-cef
Если вам нужно чисто Java-решение, вы можете попробовать JWebEngine. Это делает HTML 4 очень хорошим. Вы можете использовать его в апплете, веб-запуске Java и на любой платформе. Использование очень просто.
Если вы посмотрите на The Minecraft Launcher (старый), посмотрите через LoginForm или LauncherFrame, вы сможете найти этот метод. На youtube есть руководство от kippykip о том, как декомпилировать и редактировать его: здесь