Journey browser Java Chromium Embedded 框架抛出错误?
Journey browser Java Chromium Embedded framework throwing error?
我正在尝试使用名为 Journey 浏览器的库,它使用 Java Chromium 嵌入式框架。我首先使用 Netbeans 创建了一个 Java Maven 项目,然后我编辑了 pom.xml 以匹配库指南中的值,此处为:https://github.com/CodeBrig/Journey,以添加 Maven 依赖项。 (Netbeans 没有检测到错误)然后我构建了项目以下载 Maven 依赖项并将它们的默认代码(略有修改)放在主 class 中。 Netbeans 在代码中没有发现任何错误。但是,当我 运行 项目时,我得到“java.library.path 中没有 chrome_elf”。我认为这与嵌入 JCEF 有关,但我不确定如何将其添加到 Netbeans 中的“java.library.path”。
如何解决这个“chrome_elf”问题?
另外,如果我能够解决这个问题,如果有人没有安装“chrome_elf”,这将是生产错误吗?
对于Windows
发生这种情况是因为找不到 chrome_elf.dll
(在 Windows)文件。
Java 正在 java.library.path
上寻找这个文件 - 它(无论如何在我的机器上)指的是 Windows %path%
环境变量引用的所有位置.
解决此问题的一种方法是从 GitHub 页面下载一个预构建的发行版(例如 Windows 一个,称为 here):
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
class 中提供的演示代码。结果应该会打开浏览器 window。
这是浏览器:
以上步骤对我有用 - 我需要从(大型)分发下载中保留的唯一文件是 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
class)。
从VS.check的默认输出目录复制scr/native/Release到jcef_build/native/Release Release是否存在于java.lib.path
我正在尝试使用名为 Journey 浏览器的库,它使用 Java Chromium 嵌入式框架。我首先使用 Netbeans 创建了一个 Java Maven 项目,然后我编辑了 pom.xml 以匹配库指南中的值,此处为:https://github.com/CodeBrig/Journey,以添加 Maven 依赖项。 (Netbeans 没有检测到错误)然后我构建了项目以下载 Maven 依赖项并将它们的默认代码(略有修改)放在主 class 中。 Netbeans 在代码中没有发现任何错误。但是,当我 运行 项目时,我得到“java.library.path 中没有 chrome_elf”。我认为这与嵌入 JCEF 有关,但我不确定如何将其添加到 Netbeans 中的“java.library.path”。
如何解决这个“chrome_elf”问题? 另外,如果我能够解决这个问题,如果有人没有安装“chrome_elf”,这将是生产错误吗?
对于Windows
发生这种情况是因为找不到 chrome_elf.dll
(在 Windows)文件。
Java 正在 java.library.path
上寻找这个文件 - 它(无论如何在我的机器上)指的是 Windows %path%
环境变量引用的所有位置.
解决此问题的一种方法是从 GitHub 页面下载一个预构建的发行版(例如 Windows 一个,称为 here):
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
class 中提供的演示代码。结果应该会打开浏览器 window。
这是浏览器:
以上步骤对我有用 - 我需要从(大型)分发下载中保留的唯一文件是 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
class)。
从VS.check的默认输出目录复制scr/native/Release到jcef_build/native/Release Release是否存在于java.lib.path