idea springboot maven項目打jar包和war包


1.打jar包直接配置好maven后,直接用自帶命令,clean (清除的是target里面的東西,包括之前打的包),然后package打包就行

 

2.打war包

1 在pom.xml依賴配置中新增 <packaging>war</packaging>

2.

需要對啟動類進行改寫,添加@override下的代碼,繼承SpringBootServletInitializer類,在springBoot啟動類的同級目錄添加一個繼承SpringBootServletInitializer 的類,該類在idea開發工具啟動springBoot main函數時不會被初始化,在Tomcat啟動時才會被初始化

 

public class Application extends SpringBootServletInitializer{
    protected static final Logger logger = LoggerFactory.getLogger(Application.class);
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(Application.class);
    }
    public static void main(String[] args){
        SpringApplication.run(Application.class, args);
        logger.info("com.cehh.Application is success!");
    }
}

 


修改pom依賴
<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-tomcat</artifactId>
   <scope>provided</scope>
</dependency>

 

 

<!-- war 插件 -->
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <configuration>
        <warName>demo</warName>
    </configuration>
</plugin>
warName改成自己打war包的名字

 

 3.在idea頂部菜單欄目中點擊Build再選擇Build Artifacts產品類型就可以在項目的target目錄下生成對應的war;或者直接maven命令package也可以打包

4.

把生成的war放在Tomcat的webapps目錄下,Tomcat的端口號最好配置成跟springBoot項目配置文件的端口號一樣,不然項目運行后訪問會以Tomcat的端口號為准(注意:只支持tomcat8以上運行)

5 運行並訪問,運行時會初始化繼承SpringBootServletInitializer的類

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM