spring boot開發熱載入問題 自動編譯不生效
今天抽空寫下spring boot開發時熱載入問題。筆者本地環境如下
作業系統:Mac os;ide:idea 2017 旗艦版;spring boot 2.0.4;
首先在父pom.xml檔案中新增依賴項:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
然後在子某塊pom.xml檔案中配置
<build>
<finalName>xxxxx</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<mainClass>xxxx</mainClass>
<fork>true</fork><!--必須-->
<addResources>true</addResources>
</configuration>
</plugin>
</plugins>
</build>
接下來是idea設定
設定自動編譯
接下來 快捷鍵 command + option + shift + /(每個人的電腦設定可能不一樣)
選擇Registery
另外在application.properties中可以加入以下程式碼
#熱部署生效false是不用重啟的意思
spring.devtools.restart.enabled=false
#設定重新載入的目錄
spring.devtools.restart.additional-paths=src/main/java
#classpath目錄下的WEB-INF資料夾內容修改不重啟
spring.devtools.restart.exclude: WEB-INF/**
當然你也可以在啟動類中新增這麼一段程式碼:
@ImportResource({"classpath*:META-INF.spring/applicationContext.xml"})
@SpringBootApplication
@EnableApolloConfig({"dev1.redis","dev1.email_default","application"})
@EnableDiscoveryClient
public class StartServiceApplication {
@Bean
@LoadBalanced
public RestTemplate createRestTemplate() {
return new RestTemplate();
}
public static void main(String[] args) {
// 新增如下程式碼,主要是修改不用重新啟動的意思
System.setProperty("spring.devtools.restart.enabled", "false");
SpringApplication.run(StartServiceApplication.class, args);
}
}
當以上都設定好之後,你回發現其實並沒有卵用 ,網上看很多哥們按上面的步驟就說沒有問題了。但我的環境還是不生效
接下來告訴你們原因,修改java檔案之後按 command + F9或者點選
你會發現出現如下提示資訊
這樣就熱載入生效了。
筆者也想能不能我修改儲存後自動make啊,發現是不行的。然後有網友用設定巨集的辦法去解決這個問題
參考連結如下:
https://my.oschina.net/fdblog/blog/172229
好了,以上就是總結,當然網友有遇到其他疑問也可以評論文章,我會及時回覆的
相關文章
- disconf問題引發對spring boot配置載入的探究Spring Boot
- Spring Boot 如何熱載入 jar 實現動態外掛?Spring BootJAR
- Spring Boot 如何熱載入jar實現動態外掛?Spring BootJAR
- spring.jackson.default-property-inclusion 不生效問題分析Spring
- Spring基礎系列-Spring事務不生效的問題與迴圈依賴問題Spring
- 關於動態使用keepAlive不生效的問題
- Spring boot 和Vue開發中CORS跨域問題Spring BootVueCORS跨域
- spring-boot版本問題讓開發懷疑人生Springboot
- Micronaut使用提前編譯支援Spring Boot編譯Spring Boot
- spring cloud gateway 不生效SpringCloudGateway
- Spring Boot 自動配置原理Spring Boot
- Jenkins自動部署spring bootJenkinsSpring Boot
- element UI前端樣式不生效問題UI前端
- Mybatis動態傳入order by 引數的時候不生效的問題解決方案MyBatis
- 原始碼解析Spring AOP的載入與生效原始碼Spring
- Linux驅動開發: Ubuntu(PC機)系統上編譯驅動並載入測試LinuxUbuntu編譯
- 極速開發之Spring Boot五種熱部署方式Spring Boot熱部署
- $(function(){}裡面方法不載入問題Function
- tp5.0 的 模組配置自動載入問題
- libmemcached編譯問題IBM編譯
- SPI編譯問題編譯
- Spring Boot 自動裝配原理Spring Boot
- Spring Boot核心原理-自動配置Spring Boot
- Spring Boot 自動配置之@EnableAutoConfigurationSpring Boot
- 記錄@EnumValue註解不生效的問題
- vue scoped 解決樣式不生效問題Vue
- element UI 修改原生樣式不生效問題UI
- Spring Boot面試問題| BaeldungSpring Boot面試
- 為什麼不推薦在Spring Boot中使用@Value載入配置Spring Boot
- 從零開始學typescript— 自動編譯TypeScript編譯
- Spring Boot幾種啟動問題的解決方案Spring Boot
- 【問題記錄】—.NetCore 編譯問題NetCore編譯
- 域名解析為什麼不生效?域名解析不生效常見問題彙總
- Java動態編譯和熱更新Java編譯
- Spring Boot 自動配置 原始碼分析Spring Boot原始碼
- Docker 之 Spring Boot 自動化部署DockerSpring Boot
- Spring Boot自動配置原理、實戰Spring Boot
- Spring Boot 面試,一個問題你就答不上來了Spring Boot面試