Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker中的简单Java应用程序-无法找到或加载主类_Java_Docker - Fatal编程技术网

Docker中的简单Java应用程序-无法找到或加载主类

Docker中的简单Java应用程序-无法找到或加载主类,java,docker,Java,Docker,我创建了一个简单的Eclipse项目,在src/com/docker/Main.java中包含Main类。 当我尝试在构建映像后在docker容器中运行它时,会出现无法找到或加载主类错误 Docker图像内容: FROM openjdk:8 COPY . /app/ WORKDIR /app RUN javac src/com/docker/Main.java CMD ["java", "com.docker.Main"] 我尝试了几种不同的RUN和C

我创建了一个简单的Eclipse项目,在src/com/docker/Main.java中包含Main类。 当我尝试在构建映像后在docker容器中运行它时,会出现无法找到或加载主类错误

Docker图像内容:

FROM openjdk:8
COPY . /app/
WORKDIR /app
RUN javac src/com/docker/Main.java

CMD ["java", "com.docker.Main"]
我尝试了几种不同的RUN和CMD,但都没有效果。我试过用斜杠“/”但还是不起作用

CMD ["java", "com.docker.Main.java"]
CMD ["java", "com.docker.Main.class"]
如果在
javac
部分之后运行以下命令,它将列出
Main.java
Main.class
文件

RUN ls src/com/docker/

好吧,也许这张图片可以解释更多的参数


尝试将workdir设置为/app/src。您必须将
-cp src
添加到
java
command@Oo.oO我只尝试了-cp,没有成功您的代码(生成的类)在
src/com/docker/Main.class
中。这就是为什么您必须调用
java-cp src com.docker.Main
@Arnaud才能工作的原因。为什么这是必要的?