SpringBoot2.0 webScoket 打包war 添加第三方jar包

這幾天打包(war)了一個用SpringBoot寫的一個項目,在打包中有幾個地方要注意一下的:

(1)修改jar包爲war包:pom文件中修改

<packaging>war</packaging>
    <!--<packaging>jar</packaging>-->

(2)打包的時候需要移除SpringBoot內置的Tomcat容器:

解決方法:修改pom中的

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope> <!-- 打包時添加scope 移除內置Tomcat容器 -->
</dependency>

在本地運行時再把scope註釋掉

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <!-- <scope>provided</scope> -->
</dependency>
(3)重點:在項目有時候要用到jar(但是能用maven的倉庫儘量用,好處的話就不多說了),如果項目中用到第三方的jar包

解決辦法:一樣修改pom中的build,在plugins標籤中添加plugin

    <!-- 打包本地libs -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <configuration>
                    <webResources>
                        <resource>
                            <directory>libs</directory> <!-- 文件夾名稱 -->
                            <targetPath>WEB-INF/lib/</targetPath>
                            <includes>
                                <include>**/*.jar</include>
                            </includes>
                        </resource>
                    </webResources>
                </configuration>
            </plugin>

這裏要注意紅色標記的地方 libs是存放jar包的文件夾 如果放在與src同級的位置可以直接把libs替換成你的文件夾名稱

如果存放jar包的文件夾在src/main/resources/裏面的話要把路勁加上去:即把紅色標記的地方改爲

src/main/resources/libs <!-- libs是jar所在文件夾名稱 -->

(4)重點:如果在項目中有用到webSocket通信,在我們打完包後運行會包webSocketConfig(配置類) 的連接地址連接不上的錯誤。

解決方法:WebSocketConfig類是新建的一個類,添加上@Configuration註解。

@Configuration
public class WebSocketConfig {

    /**
     * 本地運行 添加註解@Bean
     * @return
     */
    //@Bean
    public ServerEndpointExporter serverEndpointExporter() {
        return new ServerEndpointExporter();
    }
}
在打包時把@Bean註解註釋掉。在本地運行時在加上@Bean註解

WebSocket配置方法可以在百度上找到。


最後有什麼問題歡迎提出,我也是在學習中的“土木工程”






發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章