首页 > 其他分享 >MacOSX系统jcefmaven用JDK17启动教程

MacOSX系统jcefmaven用JDK17启动教程

时间:2024-01-23 10:24:18浏览次数:26  
标签:addNotify java JDK17 MacOSX jcefmaven awt desktop add Container

  1. 拉取代码,git clone https://github.com/jcefmaven/jcefmaven.git

  2. 导入IDE,我用的是IntelliJ IDEA 2023.3,如果用其他的就正常导入Maven项目就行了。

  3. Maven构建一下

  4. 运行Main方法,运行me.friwi.jcefsampleapp.MainFrame#main方法。修改一下这里的地址,默认是谷歌,可以改成百度或者其他容易访问的网址

第一次运行的时候会下载一个针对系统的包,也是从Github上下载的,如果感觉慢的可以挂梯子。

下载完后,在工程目录的jcef-bundle文件夹下会多出很多文件,系统不同,文件可能也不同。这个是Mac的

  1. 如果运行的JDK版本是17,第一次运行可能会报错(从文档上看是高于16就会报错,我系统只有11和17,我用11运行没问题,17就会报错)
[0123/095427.154786:WARNING:chrome_browser_cloud_management_controller.cc(88)] Could not create policy manager as CBCM is not enabled.
Exception in thread "main" java.lang.IllegalAccessError: class org.cef.browser.mac.CefBrowserWindowMac (in unnamed module @0x3c0a50da) cannot access class sun.awt.AWTAccessor (in module java.desktop) because module java.desktop does not export sun.awt to unnamed module @0x3c0a50da
	at org.cef.browser.mac.CefBrowserWindowMac.getWindowHandle(CefBrowserWindowMac.java:27)
	at org.cef.browser.CefBrowserWr.getWindowHandle(CefBrowserWr.java:337)
	at org.cef.browser.CefBrowserWr.access$600(CefBrowserWr.java:49)
	at org.cef.browser.CefBrowserWr$3.addNotify(CefBrowserWr.java:232)
	at java.desktop/java.awt.Container.addNotify(Container.java:2804)
	at java.desktop/javax.swing.JComponent.addNotify(JComponent.java:4839)
	at java.desktop/java.awt.Container.addNotify(Container.java:2804)
	at java.desktop/javax.swing.JComponent.addNotify(JComponent.java:4839)
	at java.desktop/java.awt.Container.addNotify(Container.java:2804)
	at java.desktop/javax.swing.JComponent.addNotify(JComponent.java:4839)
	at java.desktop/javax.swing.JRootPane.addNotify(JRootPane.java:726)
	at java.desktop/java.awt.Container.addNotify(Container.java:2804)
	at java.desktop/java.awt.Window.addNotify(Window.java:791)
	at java.desktop/java.awt.Frame.addNotify(Frame.java:495)
	at java.desktop/java.awt.Window.pack(Window.java:829)
	at me.friwi.jcefsampleapp.MainFrame.<init>(MainFrame.java:173)
	at me.friwi.jcefsampleapp.MainFrame.main(MainFrame.java:202)

官网给出了解决方案

Limitations

  • No OSR mode supported on win-arm64 (no jogamp)
  • CefApp.addAppHandler(...) should not be used. Use builder.setAppHandler(...) instead (requires a CefMavenAppHandlerAdapter)
  • To run on JDK 16 or later:

To use on MacOSX, add the following JVM flags:

--add-opens java.desktop/sun.awt=ALL-UNNAMED
--add-opens java.desktop/sun.lwawt=ALL-UNNAMED
--add-opens java.desktop/sun.lwawt.macosx=ALL-UNNAMED

To use OSR (off-screen render) mode, add these flags for JOGL:

--add-exports java.base/java.lang=ALL-UNNAMED
--add-exports java.desktop/sun.awt=ALL-UNNAMED
--add-exports java.desktop/sun.java2d=ALL-UNNAMED

我们只关注To use on MacOSX, add the following JVM flags这部分就可以了,如果你也是用的IDEA,可以按照下面的方案配置

编辑运行配置

添加虚拟机选项

将上面的参数粘贴进去

粘贴完,点击后面的“展开”按钮,IDEA会自动格式化成一下的样子。

再次运行就OK了

标签:addNotify,java,JDK17,MacOSX,jcefmaven,awt,desktop,add,Container
From: https://www.cnblogs.com/inkyi/p/17981744

相关文章

  • 从JDK8升级到JDK17:探索JAVA的新特性和改进
    升级到JDK17的必要性JDK8提供了很多实用且常用的特性,例如lambda表达式等,再加上超长的支持时间(JDK8支持到2030年,比JDK11的2026年和JDK17的2029年都要长)。而从JDK9往后,JDK的发布周期也缩短为6个月,也间接导致每个版本的新特性相对较少,大家的对新特性的提升感知不强,所以升级欲望不是......
  • JDK1.8 如何升级到JDK17?详细图文讲解亲测有效
    前言电脑上之前已经安装了jdk1.8的版本,由于现在很多新的jar包需要jdk11以上版本。那么如何升级到jdk17的版本一、检查当前jdk版本java-version如果你本地已经有1.8版本了找到环境变量设置地方JAVA_HOME二、JDK17下载官方下载地址(Oracle中国的官方网站)https://www.or......
  • 你还在“垃圾”调优?快来看看JDK17的ZGC如何解放双手 | 京东云技术团队
    1、前言不要犹豫了,GC最大停顿时间小于1ms,支持16TB内存,这么高的性能提升,也不需要复杂的调优,节省了这个时间,你去陪对象不香嘛。上篇文章给大家带来了JDK11升级JDK17的最全实践,相信大家阅读后对于升级JDK17有了基本的了解。同时我们也会比较好奇,ZGC的原理是啥样的,怎么做到停顿时间......
  • 你还在“垃圾”调优?快来看看JDK17的ZGC如何解放双手 | 京东云技术团队
    1、前言不要犹豫了,GC最大停顿时间小于1ms,支持16TB内存,这么高的性能提升,也不需要复杂的调优,节省了这个时间,你去陪对象不香嘛。上篇文章给大家带来了JDK11升级JDK17的最全实践,相信大家阅读后对于升级JDK17有了基本的了解。同时我们也会比较好奇,ZGC的原理是啥样的,怎么做到停顿时间那么......
  • Ubuntu22安装graalvm JDK17+Tomcat9设置自启动
    graalvmJdk17安装参考 https://blog.csdn.net/weixin_46551671/article/details/134264889 Tomcat安装下载地址https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.84/bin/apache-tomcat-9.0.84.tar.gz安装下载安装包,将安装包上传到/usr/local/目录下执行以下命令tar......
  • IDEA2023只能创建jdk17和21的springboot项目解决
    现象:解决:将serverurl修改即可https://start.spring.io--》https://start.aliyun.com可以对比下内容修改成功后就可以创建低版本jdk的springboot项目了......
  • Kali安装JDK8和JDK17并切换
    Kali安装JDK8和JDK17切换在进行漏洞复现的时候,发现kali中JDK为17,所以一些POC用不了,需要JDK低版本安装JDK1.8[下载地址]mkdir-p/usr/local/javacpjdk-8u251-linux-x64.tar.gz/usr/local/javatar-zxvfjdk-8u251-linux-x64.tar.gz配置环境变量vim/etc/profile#......
  • boot3+JDK17+spring-cloud-gateway:4.0.0+spring-cloud:2022.0.0.0+Nacos2.2.1配置动
    项目依赖配置#Nacos帮助文档:https://nacos.io/zh-cn/docs/concepts.html#Nacos认证信息spring.cloud.nacos.config.username=nacosspring.cloud.nacos.config.password=nacosspring.cloud.nacos.config.contextPath=/nacos#设置配置中心服务端地址spring.cloud.naco......
  • 电脑同时配置JDK8和JDK17两个版本
    1,下载JDK17https://www.oracle.com/java/technologies/downloads/#java17下载zip版本,解压后新建一个jre目录win+rcmdsysmd.cpl2,在系统变量中设置要用JDK17时,就将JAVA_HOME=%JAVA_HOME8%改为JAVA_HOME=%JAVA_HOME17%3,双击Path编辑环境变量小知识如果把以%......
  • 使用openjdk17编译时报错:Fatal error compiling: 错误: 不支持发行版本 1.17
    1.在linux环境下(docker镜像里面)使用如下命令编译打包时报错mvncleanpackage-Dmaven.test.skip=true[INFO]Scanningforprojects...[INFO][INFO]---------------------<xxx.xxx:pero-xdd>----------------------[INFO]Buildingpero-xdd0.0.1-SNAPSHOT[INFO]-......