gpt4 book ai didi

java - 将 JRE 复制到 docker 并运行 java 命令时出现问题

转载 作者:行者123 更新时间:2023-11-30 05:19:53 25 4
gpt4 key购买 nike

我正在将 JRE 目录的工作版本复制到 docker 中并尝试运行/JRE/bin/java。但它会抛出 ash: java not found 错误。我在 Linux VM 中做同样的事情。只需复制 JRE 文件夹并执行 java 命令即可在 VM 中正常工作。我不想从任何地方下载 JRE。想要捆绑这个特定的 JRE。如何解决这个问题。

我进入 shell 控制台并导航到 JRE/bin/目录并执行“java”。即使这样它还是失败了。该错误与 ash: java not found 错误相同。

Dockerfile:

FROM alpine:latest

ENV HOME=/root \
DEBIAN_FRONTEND=noninteractive \
LANG=en_US.UTF-8 \
LANGUAGE=en_US.UTF-8 \
LC_ALL=C.UTF-8 \
DISPLAY=:0.0 \
DISPLAY_WIDTH=1024 \
DISPLAY_HEIGHT=768

RUN apk --update --upgrade add \
bash \
fluxbox \
x11vnc \
xterm \
xvfb

COPY MyJavaApp MyJavaApp/
WORKDIR /MyJavaApp
ENV PATH="./JRE/bin:${PATH}"

最佳答案

什么时候将JRE目录复制到docker?即 Docker 构建时间或启动 Docker 容器之后?

看起来您正确地将本地 Java 目录复制到镜像,但是当前位置无法访问 java 二进制文件,因此,请确保设置 PATH。应该是这样的,

RUN export PATH=/JRE/bin:${PATH}

或者将路径传递给 Dockerfile 中的 ENV,

ENV PATH="/JRE/bin:${PATH}"

关于java - 将 JRE 复制到 docker 并运行 java 命令时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59730488/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com