finalshell 4.5.x在m1mac闪退

2024-09-07 12:52
文章标签 闪退 4.5 m1mac finalshell

本文主要是介绍finalshell 4.5.x在m1mac闪退,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

使用过程中会出现突然闪退,尤其在定位生产打开一堆窗口的情况下,绝绝子

闪退崩溃日志:

Thread 116 Crashed:: Java: pool-4-thread-28
0   libsystem_kernel.dylib        	       0x18e926600 __pthread_kill + 8
1   libsystem_pthread.dylib       	       0x18e95ef70 pthread_kill + 288
2   libsystem_c.dylib             	       0x18e86b908 abort + 128
3   libjvm.dylib                  	       0x1078e0140 os::abort(bool, void*, void const*) + 56
4   libjvm.dylib                  	       0x107aa6ef8 VMError::report_and_die(int, char const*, char const*, char*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long) + 2404
5   libjvm.dylib                  	       0x107aa6588 VMError::report_and_die(Thread*, unsigned int, unsigned char*, void*, void*, char const*, ...) + 72
6   libjvm.dylib                  	       0x107aa72a8 VMError::report_and_die(Thread*, unsigned int, unsigned char*, void*, void*) + 36
7   libsystem_platform.dylib      	       0x18e994184 _sigtramp + 56
8   libjvm.dylib                  	       0x107460ca0 BlockLocationPrinter<G1CollectedHeap>::base_oop_or_null(void*) + 236
9   libjvm.dylib                  	       0x107460ca0 BlockLocationPrinter<G1CollectedHeap>::base_oop_or_null(void*) + 236
10  libjvm.dylib                  	       0x10745e334 BlockLocationPrinter<G1CollectedHeap>::print_location(outputStream*, void*) + 64
11  libjvm.dylib                  	       0x1078d4914 os::print_location(outputStream*, long, bool) + 220
12  libjvm.dylib                  	       0x1078db71c os::print_register_info(outputStream*, void const*, int&) + 180
13  libjvm.dylib                  	       0x107aa56d0 VMError::report(outputStream*, bool) + 10472
14  libjvm.dylib                  	       0x107aa6a14 VMError::report_and_die(int, char const*, char const*, char*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long) + 1152
15  libjvm.dylib                  	       0x107aa6588 VMError::report_and_die(Thread*, unsigned int, unsigned char*, void*, void*, char const*, ...) + 72
16  libjvm.dylib                  	       0x107aa72a8 VMError::report_and_die(Thread*, unsigned int, unsigned char*, void*, void*) + 36
17  libsystem_platform.dylib      	       0x18e994184 _sigtramp + 56
18  libjvm.dylib                  	       0x107460ca0 BlockLocationPrinter<G1CollectedHeap>::base_oop_or_null(void*) + 236
19  libjvm.dylib                  	       0x107460ca0 BlockLocationPrinter<G1CollectedHeap>::base_oop_or_null(void*) + 236
20  libjvm.dylib                  	       0x10745e334 BlockLocationPrinter<G1CollectedHeap>::print_location(outputStream*, void*) + 64
21  libjvm.dylib                  	       0x1078d4914 os::print_location(outputStream*, long, bool) + 220
22  libjvm.dylib                  	       0x1078db71c os::print_register_info(outputStream*, void const*, int&) + 180
23  libjvm.dylib                  	       0x107aa40e8 VMError::report(outputStream*, bool) + 4864
24  libjvm.dylib                  	       0x107aa6a14 VMError::report_and_die(int, char const*, char const*, char*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long) + 1152
25  libjvm.dylib                  	       0x107aa6588 VMError::report_and_die(Thread*, unsigned int, unsigned char*, void*, void*, char const*, ...) + 72
26  libjvm.dylib                  	       0x107aa72a8 VMError::report_and_die(Thread*, unsigned int, unsigned char*, void*, void*) + 36
27  libjvm.dylib                  	       0x10797dc84 JVM_handle_bsd_signal + 424
28  libsystem_platform.dylib      	       0x18e994184 _sigtramp + 56
29  libjvm.dylib                  	       0x1075de84c jni_SetByteArrayRegion + 428
30  ???                           	       0x113d39e10 ???
31  ???                           	       0x1142ad018 ???
32  ???                           	      0x2e000409b0 ???

以下为gpt分析的结果
在这里插入图片描述
查看原始finalshell中配置的启动参数,投喂gpt给出了一些解决方案

在这里插入图片描述

当前配置选项解释

  1. -Djpackage.app-version=4.5.2

    • 设置应用程序的版本号为 4.5.2。
    • 优化建议:这个选项无须更改,因为它只是设置版本信息。
  2. -Dsun.java2d.opengl=true

    • 启用 OpenGL 硬件加速。
    • 优化建议:如果你的应用程序不依赖 OpenGL 硬件加速,或者 OpenGL 可能导致不稳定,可以尝试禁用此选项以排除它作为潜在问题的可能性。
  3. -XX:MinHeapFreeRatio=10

    • 设置 JVM 最小空闲堆内存比例为 10%。
    • 优化建议:这个值比较低,可以尝试增加这个值,例如 20%,以确保 JVM 有足够的空闲内存进行垃圾回收。
  4. -XX:MaxHeapFreeRatio=30

    • 设置 JVM 最大空闲堆内存比例为 30%。
    • 优化建议:这个值也比较低,可以尝试增加这个值,例如 40%,以确保 JVM 有足够的空闲内存进行垃圾回收。
  5. --add-exports=java.desktop/com.apple.eawt=ALL-UNNAMED

    • 允许未命名模块访问 java.desktop 模块中的 com.apple.eawt 包。
    • 优化建议:如果你的应用程序需要访问 com.apple.eawt 包,这个选项是必要的,无须更改。

其他优化建议

  1. 增加堆栈大小

    • 如果你的应用程序可能因为堆栈溢出而崩溃,可以增加 JVM 堆栈大小,例如:
      -Xss2m
      
    • 默认堆栈大小通常是 1MB,你可以尝试增加到 2MB 或更大。
  2. 启用详细的垃圾收集日志

    • 以便更好地监控垃圾收集情况和内存使用情况:
      -Xlog:gc*:file=gc.log:time,uptime:filecount=5,filesize=10m
      
  3. 启用崩溃日志

    • 以便在 JVM 崩溃时生成更多的调试信息:
      -XX:+CreateCoredumpOnCrash
      -XX:+HeapDumpOnOutOfMemoryError
      -XX:HeapDumpPath=/path/to/dump
      
  4. 增加初始堆内存和最大堆内存

    • 例如:
      -Xms512m
      -Xmx2g
      

最终优化后的内容,目前使用中暂时未遇到闪退
文件路径 /Applications/FinalShell.app/Contents/app/FinalShell.cfg

[Application]
app.classpath=$APPDIR/finalshell.jar
app.mainclass=st
app.classpath=$APPDIR/lib-run/bcprov.jar[JavaOptions]
java-options=-Djpackage.app-version=4.5.2
java-options=-Dsun.java2d.opengl=true
java-options=-XX:MinHeapFreeRatio=20
java-options=-XX:MaxHeapFreeRatio=40
java-options=--add-exports=java.desktop/com.apple.eawt=ALL-UNNAMED
java-options=-Xss2m
java-options=-Xms512m
java-options=-Xmx2g

这篇关于finalshell 4.5.x在m1mac闪退的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1145113

相关文章

解决ubuntu系统无法与FinalShell无法连接问题

问题 解决方案 先下载ubuntu网络工具 sudo apt install net-tools 输入密码 下载完成后进入管理员模式查看密码 sudo -i hostname -I 查看IP 得到ip地址后再继续安装 openssh-server 插件 sudo apt-get install openssh-server 问题解决 尝试连接Fina

关于iReport5.6.0无法正常启动或者闪退或者JDK8不兼容的解决方案

我下载了iReport5.6.0 版本的,启动不起来;jdk 1.8 下载iReport5.6.0地址:https://download.csdn.net/download/u013456370/10589765 参考链接:https://blog.csdn.net/erlian1992/article/details/76359191?locationNum=6&fps=1 如果是停留在这

Unity GoogleVR(一)—— 解决安卓打包黑屏、闪退

使用配置: [Android JDK、Android SDK、Android NDK] 自行安装Unity 2019.4.9f1Google Cardboard XR Plugin for Unity(此项不必下载,可通过Unity的Package Manager直接导入 url )Google原文地址(需要翻墙)本文测试机是华为P40 正文 1、新建工程 2、导入SDK     2.1 W

已解决:VS2022启动闪退,错误模块名称: clr.dll,版本: 4.8.9261.0,时间戳: 0x667a1925的问题

本问题已得到解决,请看以下小结: 关于《VS2022启动闪退》的解决方案 记录备注报错时间2024年报错版本VS2022报错复现下载某款VPN软件后,打开VS2022闪退,事件查看器输出如下报错描述错误应用程序名称: devenv.exe,版本: 17.11.35222.181,时间戳: 0x66c7cb86 错误模块名称: clr.dll,版本: 4.8.9256.0,时间戳: 0x665a

.netframework 4.5.1安装成功,单在vs目标框架中找不到

安装好vs2012后默认的目标框架是.netframework 4.5, 现在想安装4.5.1的,已经提示安装成功,并且通过aspnet_regiis.exe注册过了, 通过aspnet_regiis.exe -lv 显示当前版本确实是4.5.1,但是在vs2012中的目标框架就是不显示4.5.1,打开4.5.1创建的程序依然提示... 先在控制面板 程序卸载 那里找到Net farmew

finalshell 用 root 账号连接 ubuntu

我们平时在操作 linux 系统时,经常需要上传文件,修改文件,普通账号只能通过 vim 等工具修改,诸多不便。为了实现跟 windows 一样,双击直接编辑保存,需要下面步骤。 1. ubuntu 安装 ssh 1.1 安装 SHH 服务 sudo apt update 1.2 安装 OpenSSH 服务器 sudo apt install openssh-server

vs2013中运行程序后出现的闪退问题

当运行以下程序的时候出现了闪退,程序如下: #include <stdio.h> #include <assert.h>  const char *strstre( const char *src, const   char * sub){  const char * bp;     const char * sp;  if (src  == NULL|| sub == NULL ){   r

关于 未能加载文件或程序集“Newtonsoft.Json, Version=4.5.0.0, 错误的解决方案

经过自己一天的研究到底为什么,还有结合网上的一些大神的解决方案和了解,归结出几点 第一,如果你的引用是不存在的(即使你引用的是你需要的,新的)vs自动会自动找到旧的版本,因为bin里面没有,你先检查bin目录有没有! 第二,web.config配置的版本号跟实际想要版本号对不对,web.config配置的引用要和你引用的版本对应,两个的版本号应该与你程序需要的这个版本一致,配置如下:

Eclipse在异常关闭后,启动闪退的解决办法

Eclipse在调试程序过程中,出现问题,强制关闭Eclipse。 再启动Eclipse时闪退,重启电脑也没有用。   解决方案: http://blog.csdn.net/zgf1991/article/details/37961169 删除文件[workspace]/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi

Hadoop运行中NameNode闪退和运行mapreducer时卡在Running job.....

开始安装Hadoop时 第一次成功启动 包括MapReducer程序也能成功运行。后来不知道什么原因 进入了Safe mode 即使退出了安全模式照样不能对HDFS进行任何修改操作,索性hdfs namenode -format格式化一下,连启动都无法启动了,修改NameNode和DataNode的clusterID一致后 虽然修改HDFS问题解决了,但是运行任务时总是卡在了Running jo