有没有办法在 Java 中嵌入浏览器?更具体地说,是否有可以模拟浏览器的库?
15 回答
从 JavaFX 2.0 开始,您现在可以使用webview
我相信 JWebPane 将成为将浏览器嵌入 Java 应用程序的官方方式。它基于开源引擎 - WebKit,用于 Apples Safari 和 Googles Chrome 浏览器。有关详细信息,请参阅此博客。
你可以试试这个:https ://jdic.dev.java.net/
(来源:java.net)
或者这个: http: //lobobrowser.org/java-browser.jsp
(来源:lobobrowser.org)
您可以将SWT用于您的 GUI。它的浏览器控件允许您轻松嵌入 IE、Mozilla 或 Safari(取决于您运行的平台)。
到目前为止,我所熟悉的最强大的嵌入式浏览器是 SWT 中的那个。事实上,它是如此灵活,以至于你在 Eclipse 中看到的 JavaDoc hover 实际上是一个浏览器,而 JavaDoc 视图实际上支持动画之类的东西!
使用 SWT 的唯一风险是针对不同平台有不同版本的 SWT 库。我不确定是否可以包含一个单一的罐子来覆盖所有人。
您可以使用JDIC API在 Swing/AWT GUI 中嵌入浏览器。我没有看到任何提及 OS X,所以它可能对你没用。
您也可以尝试来自 DJ Native Swing 的 JWebBrowser:http: //djproject.sourceforge.net/ns
你可以试试Webrenderer或Ice Browser
如果您需要纯 Java 解决方案,那么您可以尝试JWebEngine。它使 HTML 4 非常好。您可以在小程序、Java webstart 和任何平台上使用它。使用非常简单。
你可以试试 a JEditorPane
,它不解释高级 HTML、Javascript 或高级 CSS,但你可以自己编写那部分,称为EditorKit
. 那是 JEditorPane 查询的类/对象或它必须如何显示其内容。
我知道它是可能的,因为我尝试过但失败了(:P),但它现在可能已经过时或不推荐使用,我不知道。
如果您查看 The Minecraft 启动器(旧的),通过 LoginForm 或 LauncherFrame,您可能能够找到该方法。kippykip 在 youtube 上有一个关于如何反编译和编辑它的教程:这里
也许Chromium Embedded Framework是您的一个选择。特定于 Java 有
SWT 的 javacef:https ://github.com/wjywbs/javacef
AWT 的 java-cef:https ://bitbucket.org/chromiumembedded/java-cef