项目开发中,很多情况下我们会打成jar启动,此时如果jar中出现多个含有main的类,启动一般会报错,此时可以通过在pom中指定启动类来解决这个问题。 第一种: 如果你的POM是继承spring-boot-starter-parent的话...<br>简述<br>项目开发中,很多情况下我们会打成jar启动,此时如果jar中出现多个含有main的类,启动一般会报错,此时可以通过在pom中指定启动类来解决这个问题。<br>第一种:<br>如果你的POM是继承spring-boot-starter-parent的话,只需要在pom的root如下指定就行<br>com.besttop.BaseServerApplication<br>第二种:<br>如果你的Pom中没有继承Spring-boot-start-parent,那么需要通过如下配置实现。<br>&#9;org.springframework.bootspring-boot-maven-plugin1.3.5.RELEASEcom.xx.xxrepackage&#9;<br><img><br><img><br>使用Maven打包的时候, 有时候需要指定启动类, 可如下操作! 测试项目(结构如下): 代码: com.xxx.MainClass.java package com.xxx; public class MainClass { public static void main(String[] args) { ...<br>使用Maven打包的时候, 有时候需要指定启动类, 可如下操作!<br>测试项目(结构如下):<br><img><br>代码: com.xxx.MainClass.java<br>package com.xxx; public class MainClass { public static void main(String[] args) { System.out.println("The project is to use maven to package a Jar with mainclass !"); } }<br>打包的时候指定启动类为 com.xxx.MainClass<br>方法一:<br>pom.xml<br>4.0.0com.xxxmaven-packaging1.0-SNAPSHOTMainClassorg.apache.maven.pluginsmaven-compiler-plugin1.81.8org.apache.maven.pluginsmaven-shade-plugin3.2.1packageshadecom.xxx.MainClass<br>执行 mvn clean package ,在target包下找到MainClass.jar文件<br>可直接使用命令 java -jar MainClass.jar 执行<br><img><br>方法二:<br>pom.xml<br>4.0.0com.xxxmaven-packaging1.0-SNAPSHOTMainClassorg.apache.maven.pluginsmaven-compiler-plugin1.81.8org.apache.maven.pluginsmaven-jar-plugincom.xxx.MainClasstruelib/<br>执行 mvn clean package ,在target包下找到MainClass.jar文件<br>可直接使用命令 java -jar MainClass.jar 执行<br><img><br>两种配置效果时一样的 !!!!!<br><img><br><img><br>maven 默认打包插件,用来创建 projectjarmaven-shade-plugin 打可执行包,executable(fat)jarmaven-assembly-plugin 支持自定义打包方式maven-jar-pluginmaven-shade-plugin&#9;