journey浏览器java chromium嵌入式框架抛出错误?

nwo49xxi  于 2021-06-29  发布在  Java
关注(0)|答案(1)|浏览(664)

我正在尝试使用一个名为旅程浏览器的库,它使用JavaChromium嵌入式框架。我首先用netbeans创建了一个java maven项目,并编辑了pom.xml以匹配库指南中的值,如下所示:https://github.com/codebrig/journey,添加maven依赖项(netbeans没有检测到错误)然后我构建了这个项目来下载maven依赖项,并将它们的默认代码(稍微修改)放在主类中。netbeans在代码中没有发现错误。然而,当我运行这个项目时,我得到了一个“no chrome\ elf in java.library.path”。我认为这与嵌入jcef有关,但我不确定如何将其添加到netbeans中的“java.library.path”中。
如何解决“chrome\u elf”问题?另外,如果我能解决这个问题,如果有人没有安装“chrome\u elf”,这会是一个生产错误吗?

xam8gpfp

xam8gpfp1#

对于windows
这是因为 chrome_elf.dll (在windows上)找不到文件。
java正在上查找此文件 java.library.path -它(无论如何,在我的机器上)指的是窗口引用的所有位置 %path% 环境变量。
解决这个问题的一种方法是从github页面下载一个预构建的发行版(例如这里提到的windows发行版):

https://github.com/CodeBrig/Journey/releases/download/0.4.0-78-assets/jcef-distrib-windows64.zip

然后解压缩结果 jcef-distrib-windows64.zip . 在 win64\bin\lib\win64 在主目录下你会发现 chrome_elf.dll 你需要-和其他二进制文件,这也是需要的。
将此目录添加到您的路径-通过将其添加到windows环境变量或通过 java -Djava.library.path=... .
例如,路径可能类似于:

C:\your\path\to\jcef-distrib-windows64\win64\bin\lib\win64

这应该允许您运行 JourneyBrowser 班级。结果应该会打开一个浏览器窗口。
这是浏览器:

上面的步骤对我很有效——我需要从(大型)发行版下载中保留的文件只有 jcef-distrib-windows64\win64\bin\lib\win64 目录。有可能我已经有了一些可能需要的其他依赖项-所以我不能保证这个过程也适用于您。
对于linux(和macos)
我没有在linux机器上尝试过这个。但在这种情况下,我相信你需要下载并解压缩 jcef-distrib-linux64 释放-然后指向 jcef-distrib-linux64\linux64\bin\lib\linux64 目录,包含 libcef.so 以及其他图书馆。
与macos类似,还有一个可以下载和解压缩的发行版。
可供替代的
另一种方法是使用github上提供的预构建发行版,使用提供的命令。显然,在这种情况下,您将不会创建自己的定制实现(因此,没有 JourneyBrowser 类)。

相关问题