繁体   English   中英

我运行docker run时的Docker容器错误

[英]Docker Container error when i run docker Run

我为一个简单的Java应用程序创建了一个docker容器。

正确创建Docker映像。 当我运行docker run时,我遇到了一些与java有关的问题,但是当我使用IntelliJ运行它时,该应用程序运行良好。

码头工人错误:

PS C:\\ Windows \\ system32> docker运行测试错误:发生JNI错误,请检查安装并重试。线程“主要” java.lang.NoClassDefFoundError中的异常:java.lang.Class上的javax / jms / JMSException。 java.lang.Class.privateGetDeclaredMethods(Class.java:2701)的getDeclaredMethods0(原生方法)java.lang.Class.privateGetMethodRecursive(Class.java:3048)的java.lang.Class.getMethod0(Class.java:3018)在java.lang.Class.getMethod(Class.java:1784)在sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:544)在sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526)造成原因:java。 lang.ClassNotFoundException:javax.jms.JMSException at java.net.URLClassLoader.findClass(URLClassLoader.java:382)at java.lang.ClassLoader.loadClass(ClassLoader.java:424)at sun.misc.Launcher $ AppClassLoader.loadClass( Launcher.java:349),位于java.lang.ClassLoader.loadClass(ClassLoader.java:357)...还有7个

Dockerfile:

 FROM openjdk:8-jre COPY /target/application.jar /tmp/application.jar WORKDIR /tmp ENTRYPOINT ["java", "-cp", "application.jar", "Package.ClassWithMain"] 

提前谢谢您,蒙德

您:COPY /target/application.jar /tmp/application.jar尝试:COPY。 的/ usr / SRC / MyApp的

您:WORKDIR / tmp尝试:WORKDIR / usr / src / myapp

寻找其书面内容,应该有所帮助!

运行javac Main.java CMD [“ java”,“ Main”]

问题可能是您的jar缺少某些依赖项。 Intellij在构建路径中可能具有必需的依赖关系,这就是您的应用程序从该环境运行的原因。 您是否正在使用maven或构建工具来创建jar?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM