概述
第一种:使用devtools的方式
这种其实是热启动. 也就是需要我们手动编译之后才能生效,普通的运行main方法启动项目
pom.xml加入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>provided</scope>
<optional>true</optional>
</dependency>
可以通过event log来查看编译和更新日志
这里前提说一下, 我用的是idea.
1.需要complied编译之后才生效. 2. 需要是debug模式启动
eclipse是默认自动编译的,idea不是. 所以在设置热部署之前, 需要设置idea自动编译:
第二种: 使用springloaded插件
经过测试, 不需要手动编译, 就能生效., 用maven命令启动项目
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<dependencies>
<!-- spring热部署 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>springloaded</artifactId>
<version>1.2.6.RELEASE</version>
</dependency>
</dependencies>
<configuration>
<!--这里是main启动类的全路径-->
<mainClass>cn.springboot.Mainspringboot</mainClass>
</configuration>
</plugin>
运行
$ mvn clean spring-boot:run
上面是SpringBoot项目的热部署,如果是普通的项目也想用这个springloaded怎么办呢?
1.用maven或者直接去网上下载jar包
项目地址:https://github.com/spring-projects/spring-loaded
<dependency>
<groupId>org.springframework</groupId>
<artifactId>springloaded</artifactId>
<version>1.2.8.RELEASE</version>
<scope>provided</scope>
</dependency>
2.配置jar启动参数
Eclipse:
右键项目->Run as->Run configurations… 在tomcat启动项添加VM参数, -javaagent:
后面是jar包的地址
-javaagent:C:/springloaded-1.2.5.RELEASE.jar
-noverify -Dspringloaded=verbose
Idea也是一样,在tomcat启动的vm参数中配置
解释一下:
-javaagent: 配置java代理使用下载后的jar包路径
-noverify: 禁用字节码验证
-Dspringloaded=verbose 显示springloaded时的详细信息
idea自动编译设置
1,设置File ->Setting ->Compile:
勾选图中的选项
2, 修改run/debug配置
Run->Edit Configurations
看图 在Before Launch下面的make去掉了。
或者在运行的Edit configuration
中设置:
到了这里还要做一件事情,执行File->Invalidate Caches /Restart
到这里IDEA配置好了
但是自动编译也就意味者IDEA需要消耗更多的资源去实时监测代码改动,性能也会受到影响,而且如果我们希望的是在ctrl+s
保存时自动编译,那也可以ctrl+f9
来手动编译,或者点这个箭头
重新编译就行, 但是在类中添加新的方法不能热部署.
最后
以上就是笑点低小伙为你收集整理的Idea上的SpringBoot的热部署配置, idea的自动编译设置的全部内容,希望文章能够帮你解决Idea上的SpringBoot的热部署配置, idea的自动编译设置所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复