在我的应用程序中,我添加了SpringBoot devtools以提高开发速度。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
在它的正式文件中,它说
在运行完整打包的应用程序时,将自动禁用开发工具。如果您的应用程序是从java -jar启动的,或者是从特殊的类加载器启动的,那么它就被认为是“生产应用程序”。
该应用程序是在生产中从java -jar启动的。但是它是如何在发展中融入Intellij理念的呢?
发布于 2019-01-08 05:54:01
这其实很简单,但并不明显。当类路径中包含了spring devtools时,则启用devtools。
默认情况下,当构建最终的jar文件时,spring-boot-maven-plugin不包含spring devtools,因此它是禁用的。
默认情况下,Devtools会被自动排除(您可以使用excludeDevtools属性来控制它)。为了使war打包工作,必须将
spring-boot-devtools依赖项设置为可选的或具有提供的作用域。
如果从IDE运行spring应用程序或运行mvn spring-boot:run,那么spring devtools就在类路径中。
当spring devtools运行时,您将得到一个类似于以下内容的日志:
.e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disablehttps://stackoverflow.com/questions/54084669
复制相似问题