关于maven的一些记录
普通maven包含依赖打包成jar
使用
shade
插件,可以将依赖包含在jar中,指定入口类即可使用java -jar
命令启动。
查看更多 shade 用法
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.1.1</version>
<executions>
<execution>
<!--将插件绑定到maven的package生命周期上-->
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<!--自动将项目中没有使用的类排除-->
<minimizeJar>true</minimizeJar>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<!--入口启动类全限定名-->
<mainClass>com.example.App</mainClass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
普通maven项目中的资源管理
普通maven项目编译时只包含class文件,其他文件都会排除,如项目中的
xxx.properties
文件,xxx.xml
文件等
<build>
<resources>
<resource>
<!-- 设定主资源目录 -->
<directory>src/main/resources</directory>
<!--只载入properties文件,若想包含其他文件,需另添加include-->
<includes>
<include>*.properties</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
</build>