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

这几天打包(war)了一个用SpringBoot写的一个项目,在打包中有几个地方要注意一下的:

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

war
    

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

解决方法:修改pom中的


            org.springframework.boot
            spring-boot-starter-tomcat
            provided 

在本地运行时再把scope注释掉


            org.springframework.boot
            spring-boot-starter-tomcat
            
(3)重点:在项目有时候要用到jar(但是能用maven的仓库尽量用,好处的话就不多说了),如果项目中用到第三方的jar包

解决办法:一样修改pom中的build,在plugins标签中添加plugin

    
            
                org.apache.maven.plugins
                maven-war-plugin
                
                    
                        
                            libs 
                            WEB-INF/lib/
                            
                                **/*.jar
                            
                        
                    
                
            

这里要注意红色标记的地方 libs是存放jar包的文件夹 如果放在与src同级的位置可以直接把libs替换成你的文件夹名称

如果存放jar包的文件夹在src/main/resources/里面的话要把路劲加上去:即把红色标记的地方改为

src/main/resources/libs 

(4)重点:如果在项目中有用到webSocket通信,在我们打完包后运行会包webSocketConfig(配置类) 的连接地址连接不上的错误。

解决方法:WebSocketConfig类是新建的一个类,添加上@Configuration注解。

@Configuration
public class WebSocketConfig {

    /**
     * 本地运行 添加注解@Bean
     * @return
     */
    //@Bean
    public ServerEndpointExporter serverEndpointExporter() {
        return new ServerEndpointExporter();
    }
}
在打包时把@Bean注解注释掉。在本地运行时在加上@Bean注解

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


最后有什么问题欢迎提出,我也是在学习中的“土木工程”






你可能感兴趣的:(SpringBoot框架,sprinboot2.0,打包(war))