如何使用Docker 进行Java 开发

2025-04-05 22:29:21
推荐回答(1个)
回答1:

使用Docker 进行Java 开发步骤:

1、准备工作

现在最流行的是选择Spark,它是一个基于Java 8的极小的框架。Spark使用Maven作为构建工具。

2、源代码和配置文件

在这个例子中你要增加三个文件:

  • Maven的配置文件: pom.xml

  • 一个Java类:Hello.java

  • 一个Dockerfile

例子:

hello.java:

package sparkexample;

import static spark.Spark.get;

public class Hello {

    public static void main(String[] args) {

        get("/", (req, res) -> {

            return "hello from sparkjava.com";

        });

    }

}

pom.xml:

   

 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">    

 4.0.0    

 hellodocker    

 hellodocker    

 1.0-SNAPSHOT    

     

       

     com.sparkjava    

     spark-core    

     2.0.0    

       

     

     

       

         

       org.apache.maven.plugins    

       maven-jar-plugin    

       2.4    

           

         sparkexample    

             

               

             true    

             sparkexample.Hello    

             dependency-jars/    

               

             

           

         

         

       org.apache.maven.plugins    

       maven-compiler-plugin    

       3.1    

           

         1.8    

         1.8    

           

         

         

       org.apache.maven.plugins    

       maven-assembly-plugin    

           

             

               

             attached    

               

           package    

               

             sparkexample    

                 

               jar-with-dependencies    

                 

                 

                   

                 sparkexample.Hello    

                   

                 

               

             

           

         

       

     

   

Dockerfile:

FROM java:8     

   

# Install maven    

RUN apt-get update    

RUN apt-get install -y maven    

   

WORKDIR /code    

   

# Prepare by downloading dependencies    

ADD pom.xml /code/pom.xml    

RUN ["mvn", "dependency:resolve"]    

RUN ["mvn", "verify"]    

   

# Adding source, compile and package into a fat jar    

ADD src /code/src    

RUN ["mvn", "package"]    

   

EXPOSE 4567    

CMD ["/usr/lib/jvm/java-8-openjdk-amd64/bin/java", "-jar", "target/sparkexample-jar-with-dependencies.jar"]