java - 启动时意外的 JVM 崩溃 - 有问题的帧 readdir_r+0x36 - Apparmor 已启用
问题描述
启用 Apparmor 时:
每当我通过 JVM 参数打开 JFR 后启动 JVM 时,JVM 就会崩溃并出现以下错误。
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.181-b25 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C [libc.so.6+0xc8556] readdir_r+0x36
#
...
...
Stack: [0x00007fa86c86f000,0x00007fa86c970000], sp=0x00007fa86c96eb20, free space=1022k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [libc.so.6+0xc8556] readdir_r+0x36
V [libjvm.so+0x6a73d5] Jfr::initialize_stage_one()+0xc5
V [libjvm.so+0x6a8bcf] JfrActivator::start_stage_one(Thread*)+0xf
V [libjvm.so+0x6a8e8d] JfrActivator::on_vm_init(Thread*)+0xcd
V [libjvm.so+0xa7f8ca] Threads::create_vm(JavaVMInitArgs*, bool*)+0xc0a
V [libjvm.so+0x6d8d74] JNI_CreateJavaVM+0x74
C [libjli.so+0x797e] JavaMain+0x9e
C [libpthread.so.0+0x76ba] start_thread+0xca
我的 JFR 设置如下:
JFR_JAVA_OPTS="-XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:FlightRecorderOptions=defaultrecording=true,disk=true,settings=profile,repository=/tmp,maxage=60m,loglevel=info"
当 Apparmor 被禁用 时,JVM 启动时没有任何错误。
我的要求是,我必须为我的应用程序启用 Apparmor。我应该如何摆脱这个错误?
谢谢。
解决方案
推荐阅读
- c# - Bootstrap 3 选项卡未在 Razor 中使用 URL.Action 应用 a href
- html - 如何制作一个
- java - Logback 没有正确清理文件
- python - 函数的结果不是使用 optimize.curve_fit 的正确浮点数组
- python-3.x - 类实例即使在其上成功执行完整方法也无法返回对象属性
- angular - 来自变量 angular 5 的管道名称
- arrays - 使用 mongoclinet 的 Node Js 休息服务
- variables - 汇编语言中的“hiticks”和“loticks”是什么意思?
- php - 我们可以将模型传递给 eloquent Laravel 的 updateOrCreate 方法吗?
- python - 如何将 sub() 方法与具有可选组的正则表达式一起使用?