繁体   English   中英

在 Docker 中使用“-cp ...”选项运行 Java 应用程序

[英]running Java application with '-cp ...' option in Docker

当我想通过命令行 ( cmd ) 运行我的 java 程序时,我执行以下操作:

  1. 打开第一个cmd启动服务器
    1.1 - javac API.java
    1.2 - javac CLI.java
    1.3 - java -cp.;.\mysql-connector-java-5.1.36.jar API

  2. 给客户开第二个cmd
    2.1 - java CLI

Dockerfile我是这样写的:

FROM openjdk

COPY . /java

WORKDIR /java

RUN javac API.java
RUN javac CLI.java

CMD [ "java", "-cp", ".;.\mysql-connector-java-5.1.36.jar", "API" ]
CMD [ "java", "CLI" ]

-cp 选项不想工作。
是否有可能以某种方式在新终端中运行java CLI

Java 识别CLASSPATH环境变量 您可以使用 Docker ENV指令设置此环境变量,如果这样做,您无需担心命令行java选项是否正确。

# Note Unix conventions: `:` separates elements, `/` between path components
ENV CLASSPATH .:./mysql-connector-java-5.1.36.jar

CMD ["java", "API"]
docker run -d -p 8080:8080 my-image # runs the default CMD
docker run --rm -it my-image \
  java CLI                          # runs this command instead

暂无
暂无

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

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