2

最近我开始在带有 Oracle Java 8 的 Docker 容器中使用 Jenkins。使用 Gradle 构建项目时,我收到以下错误消息:

UnsatisfiedLinkError: linux-amd64/libnative-platform.so: libstdc++.so.6: cannot open shared object file: No such file or directory

在 Jenkins 中,我选择了“强制 GRADLE_USER_HOME 使用工作区”,但一点运气都没有。文件 libnative-platform.so 位于预期的目录中,但 gradle 不起作用。我尝试在容器中安装 Gradle,结果相同。我的最后一个设置是使用 Gradle Wrapper。

我到处寻找,但我的任务没有运气。如果有人能对此有所了解,我将不胜感激。

4

3 回答 3

6

您可以通过libstdc++在 Alpine 中安装软件包来完成这项工作

apk add --no-cache libstdc++
于 2016-09-06T09:21:18.290 回答
2
于 2016-06-14T11:51:50.693 回答
2

libstdc++.so.6:无法打开共享对象文件

libnative-platform.soJRE/JDK 与gnu libc相关联,但 Alpine 映像基于musl libc

简单的解决方案是使用基于 glibc 的 docker 镜像,如 Debian,如果你想坚持使用 Alpine,你可能会在这个github issue中找到一些线索。

于 2016-06-13T19:21:12.947 回答