dockerfile-maven-plugin 是 spotify 公司新提供的、用以替代 docker-maven-plugin 的插件,它同样是用于在 maven 中将当前项目打成一个 docker image 。 相较于 docker-maven-plugin 而言,dockerfile-maven-plugin 更简洁、方便。
<plugin>
<groupId>com.spotifygroupId>
<artifactId>dockerfile-maven-pluginartifactId>
<version>1.4.13version>
<configuration>
<repository>${project.artifactId}repository>
<tag>${project.version}tag>
<buildArgs>
<JAR_FILE>${project.build.finalName}.jarJAR_FILE>
buildArgs>
configuration>
plugin>
dockerfile-maven-plugin 插件会要求在项目的根目录下(也就是 pom.xml 文件的平级目录下)存在一个 Dockerfile 文件,它会去用这个 Dockerfile 文件生成 docker image 。
FROM openjdk:8-jre-slim-bullseye
ARG JAR_FILE
ADD target/${JAR_FILE} app.jar
EXPOSE 8080
ENTRYPOINT exec java -jar /app.jar
## ENTRYPOINT ["java", "-jar", "/app.jar"]
Apache 基金会的 maven checkstyle 插件能帮程序员检测代码中不符合规范的地方,大大方便程序开发。
checkstyle 默认使用 sun 公司的编程规范来检查代码规范。如果你像自定义校验规则,你需要提供一个 checkstyle.xml 配置文件,在配置文件中按 checkstyle 的规则启用或关闭某个规则。
不过随着《阿里巴巴 Java 开发手册》的流行,阿里巴巴推出了类似的 maven 插件 p3c-pmd,因此,checkstyle 慢慢被 p3c-pmd 取代了。
P3C-PMD 插件基于 PMD 实现了《阿里巴巴 Java 开发手册》中涉及的 48 条规则。
<plugin>
<groupId>org.apache.maven.pluginsgroupId>
<artifactId>maven-pmd-pluginartifactId>
<version>3.13.0version>
<configuration>
<rulesets>
<ruleset>rulesets/java/ali-naming.xmlruleset>
rulesets>
<printFailingErrors>trueprintFailingErrors>
configuration>
<executions>
<execution>
<id>validateid>
<phase>validatephase>
<goals>
<goal>checkgoal>
goals>
execution>
executions>
<dependencies>
<dependency>
<groupId>com.alibaba.p3cgroupId>
<artifactId>p3c-pmdartifactId>
<version>2.1.0version>
dependency>
dependencies>
plugin>