Spring-boot 热部署

  • 为什么需要springboot热部署?
    在编写代码的时候,如果我们只是简单把打印信息改变了,就需要重新部署,如果是这样的编码方式,那么我们估计一天下来就真的是打几个Hello World就下班了。那么如何解决这个问题呢?那就是springloaded。

第一种方式:

  • 使用spring-boot:run
    在pom.xml文件添加依赖包:
    然后将项目run sa –> maven build –> spring-boot:run
<build>  
    <plugins>   
    <!-- springboot 热部署 --> 
    <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin </artifactId>
        <dependencies>
            <!--springloaded hot deploy -->
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>springloaded</artifactId>
                <version>1.2.4.RELEASE</version>
            </dependency>
        </dependencies>
    </plugin>
    </plugins>
    </build>    

使用这种方式呢,我就遇到了错误。
大概的意思就是端口被占用。

java.net.BindException: Address already in use: bind

解决办法:
关闭任务管理器中还在运行的javaw.exe。

这里写图片描述

第二种方式:

  • 使用 run as – java application

把spring-loader-1.2.4.RELEASE.jar下载下来,放到项目的lib目录中,然后把myeclipse的run as参数里VM参数设置为:
-javaagent:.\lib\springloaded-1.2.4.RELEASE.jar -noverify
然后启动就可以了,这样在run as的时候,也能进行热部署。

这里写图片描述

如果还是热部署无效的话,尝试换高版本的springload。

第三种方法:

  • spring-boot-devtools

pom.xml直接添加依赖:

<dependency>  
     <groupId>org.springframework.boot</groupId>  
     <artifactId>spring-boot-devtools</artifactId>  
     <optional>true</optional>  
</dependency>  

猜你喜欢

转载自blog.csdn.net/Srain13/article/details/78885933