0

概括

我正在尝试在我的树莓派上构建 springboot 应用程序,但出现 SIGBUS (0x7) 错误

错误:

# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGBUS (0x7) at pc=0xb3de3a84, pid=7, tid=32
#
# JRE version: OpenJDK Runtime Environment AdoptOpenJDK (14.0.2+12) (build 14.0.2+12)
# Java VM: OpenJDK Server VM AdoptOpenJDK (14.0.2+12, mixed mode, sharing, g1 gc, linux-arm)
# Problematic frame:
# v  ~StubRoutines::atomic_load_long
#
# Core dump will be written. Default location: /server/core
#
# An error report file with more information is saved as:
# /server/hs_err_pid7.log

重现步骤

我有一个带有以下代码段的 docker 文件。

COPY .mvn .mvn

COPY pom.xml .

RUN ./mvnw dependency:go-offline

COPY src src

RUN ./mvnw package -DskipTests  # <------- Fails here

在我的另一台装有 ubuntu 的主机上构建良好。但是在带有 raspbian 的 Raspberry Pi 4 上失败了。

预期成绩

期望与我的其他机器类似的成功构建

实际结果

失败并出现以下错误跟踪。

[thread 52 also had an error]
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGBUS (0x7) at pc=0xb3de3a84, pid=7, tid=32
#
# JRE version: OpenJDK Runtime Environment AdoptOpenJDK (14.0.2+12) (build 14.0.2+12)
# Java VM: OpenJDK Server VM AdoptOpenJDK (14.0.2+12, mixed mode, sharing, g1 gc, linux-arm)
# Problematic frame:
# v  ~StubRoutines::atomic_load_long
#
# Core dump will be written. Default location: /server/core
#
# An error report file with more information is saved as:
# /server/hs_err_pid7.log
#
# If you would like to submit a bug report, please visit:
#   https://github.com/AdoptOpenJDK/openjdk-support/issues
#
Aborted (core dumped)
The command '/bin/sh -c ./mvnw package -DskipTests' returned a non-zero code: 134
ERROR: Service 'server' failed to build

分类信息

Java版本:14.0.2+12

你的操作系统和平台是什么?Raspbian [完整] 最新。树莓派 4

你是如何安装 Java 的?上面共享的 Dockerfile 片段。

以前有效吗?不

您是否使用其他 Java 版本进行了测试?是的,v11

4

2 回答 2

1

这是空间不足的问题,请立即阅读此https://confluence.atlassian.com/confkb/java-vm-dies-with-sigbus-0x7-when-temp-directory-is-full-on-linux-815584538.html要解决它,您必须在 /tmp 文件夹中腾出空间或使用更大空间的存储设备并将空间分配给 /tmp 文件夹。

编辑:另见 https://bugs.java.com/bugdatabase/view_bug.do?bug_id=6563308

于 2021-02-28T03:23:21.980 回答
0

Answering my own question, I tried a openjdk instead of adoptopenjdk and it worked. If it doesnt work for you, then try different versions of openjdk as well.

于 2021-05-21T09:50:16.527 回答