沉淀 Maven 日常使用的样板式代码,旨在快速开始提升开发速度。
Settings.xml
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.2.0 https://maven.apache.org/xsd/settings-1.2.0.xsd">
<servers>
<server>
<id>company-123</id>
<username>username</username>
<password>password</password>
</server>
</servers>
<mirrors>
</mirrors>
<activeProfiles>
<activeProfile>person</activeProfile>
</activeProfiles>
<profiles>
<profile>
<id>company-123</id>
<activation>
</activation>
<repositories>
<repository>
<id></id>
<url></url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id></id>
<url></url>
</pluginRepository>
</pluginRepositories>
</profile>
<profile>
<id>person</id>
<activation>
<jdk>[11,17]</jdk>
</activation>
<repositories>
<repository>
<id>aliyun-maven</id>
<url>https://maven.aliyun.com/repository/public</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>aliyun-maven</id>
<url>https://maven.aliyun.com/repository/public</url>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
</settings>
指定 Java 版本
<properties>
<java.version>17</java.version>
<maven.compiler.target>${java.version}</maven.compiler.target>
<maven.compiler.source>${java.version}</maven.compiler.source>
</properties>
常用依赖
日志
测试 (Jupiter)
<junit-jupiter.version>5.7.0</junit-jupiter.version>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<version>${junit-jupiter.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>${junit-jupiter.version}</version>
<scope>test</scope>
</dependency>
Maven 插件
执行 java 程序
<exec-maven-plugin.version>3.0.0</exec-maven-plugin.version>
<main.verticle>com.onemsg.vertx.play.MainVerticle</main.verticle>
<launcher.class>io.vertx.core.Launcher</launcher.class>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>${exec-maven-plugin.version}</version>
<configuration>
<mainClass>${launcher.class}</mainClass>
<arguments>
<argument>run</argument>
<argument>${main.verticle}</argument>
</arguments>
</configuration>
</plugin>
使用: mvn exec:java
打包可执行 jar
<maven-shade-plugin.version>3.2.4</maven-shade-plugin.version>
<main.class></main.class>
<plugin>
<artifactId>maven-shade-plugin</artifactId>
<version>${maven-shade-plugin.version}</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<transformer
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<manifestEntries>
<Main-Class>${main.class}</Main-Class>
</manifestEntries>
</transformer>
<transformer
implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer" />
</transformers>
<outputFile>
${project.build.directory}/${project.artifactId}-${project.version}-fat.jar
</outputFile>
</configuration>
</execution>
</executions>
</plugin>
使用: mvn package