Java Springboot 构建在树莓派中失败

如何解决Java Springboot 构建在树莓派中失败

总结

我正在尝试在我的 raspBerry pi 上构建 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,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

解决方法

这是一个空间不足的问题,现在阅读此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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?