当前位置: 首页 > 面试题库 >

如何将Chromium嵌入式框架(CEF)与Java集成

姬昊焱
2023-03-14
问题内容

我想制作一个桌面应用程序来浏览一个网站,我不想制作一个浏览器,而是一个浏览器嵌入的应用程序。我尝试过,JavaFx但是发现了一些问题,例如缺少对插件的支持(例如:Flash,pdf查看器等)。

经过大量搜索后,我发现了Chromium嵌入式框架(CEF)或JCEF Java包装器,但我不知道如何在Java中使用它netbeans

是否可以在Java应用程序中嵌入CEF / JCEF?


问题答案:

是否可以在Java应用程序中嵌入CEF / JCEF?

是的,你可以这样做!这些步骤是:

  1. 下载JCEF并将其解压缩

  2. 声明环境变量以指向 ${EXTRACT_DIR}/bin/lib/win64

  3. 在本地存储库中安装以下文件: ${EXTRACT_DIR}/bin/{gluegen-rt.jar, gluegen-rt-natives-windows-amd64.jar, jogl-all.jar, jogl-all-natives-windows-amd64.jar, jcef.jar}

例如: mvn install:install-file -Dfile=gluegen-rt.jar -DgroupId=org.jcef -DartifactId=gluegen -Dversion=1.0 -Dpackaging=jar

  1. 创建一个Maven项目并在pom.xml中声明已安装的工件

  2. 将样本:复制${EXTRACT_DIR}/bin/tests/simple/MainFrame.java到您的项目并尝试

请注意,这些步骤适用于 Maven ProjectJVM 64bit



 类似资料:
  • 在一个PC游戏中,我有ingame浏览器用于新闻、虚拟货币商店和社交网络。它是由Chromium嵌入式框架的全新更新构建的。问题是当我打开一个浏览器窗口(网站在那里工作良好),然后关闭,对于某些网站CEF子进程没有完成。我也可能继续听音频,如果是Youtube视频,例如。我使用的是屏幕外呈现,其他原生窗口不创建,只创建子进程。要关闭浏览器窗口,我删除对CefBrowser的所有引用并调用: 我还尝

  • 和servlet上下文init类。 我设法调出了jsf-Spring Boot配置,但现在JSF注释不起作用了。如果我手动将托管注释添加到faces-config.xml中,托管注释确实可以工作。我甚至添加了metadata-complete=“false”,所以jsf扫描注释,可惜它不起作用

  • 我在将Vaadin与Spring应用程序集成时遇到一些问题。我的所有bean都在“rootcontext.xml”文件中。我可以通过实例化“rootcontext.xml”然后为我的一个服务类调用bean来调用bean。 我可以这样填充表,但这是调用服务类的正确方法吗?因为我有更多的表必须称之为这个。 这是我的UI类: 我的根上下文。xml文件位于目录/WEB-INF/spring/root上下文

  • 我有一个简单的java项目,叫做服务器。此外,我有一个osgi api项目,它定义了一个接口BlockProvider。接下来,我有一个osgi声明性服务项目,其中有一个实现BlockProvider的服务。 在我的java项目服务器中,我有一个嵌入式osgi框架(在我的例子中是felix)。 我创建了一个bundleactivator,它安装gogo osgi捆绑包、scr捆绑包、我的api项目

  • 我们正在使用ApacheFelix(版本4.4.1)作为嵌入式OSGi框架。提供该框架的主要应用程序使用作为日志框架。存在对log4japi和log4jcore的依赖。当然,当主应用程序启动时,也会加载和配置Log4j2。主部件中触发的所有日志消息都正确写入已配置的Appender。 现在是重点。加载的所有bundle都应该能够使用与主应用程序相同的配置和日志上下文。我试图做的是提供所有Log4j

  • 我试图在SparkJava中使用下面的etcd框架 https://github.com/AdoHe/etcd4j 代码如下所示: 但是当我尝试访问下面的url时http://localhost:4567/hello 我得到以下错误 我在这里遗漏了什么?etcd在作为独立项目使用main()函数时工作,但是不与SparkJava一起工作,是否有任何etcd客户端与SparkJava一起工作?