Spring spring.groovy.template.cache 不使用 application.properties 启动
Spring Boot not using application.properties for spring.groovy.template.cache
我有一个非常简单的 Spring 引导应用程序,class 下面有详细说明。
我的问题是 application.properties 文件及其自动配置方式。我试图通过设置 'spring.groovy.template.cache: false' 来获取 Groovy 模板以在开发中更新,但这不起作用。我添加了另外两个属性来查看是否正在读取 application.properties 文件。 'logging.level.org.springframework.web: ERROR' 仍然会导致 INFO 级别的消息打印到控制台。但是,some.prop 在应用程序启动时被正确读入 MyBean class。
是否缺少这些属性的配置声明?
src/main/resources/application.属性:
spring.groovy.template.cache: false
logging.level.org.springframework.web: ERROR
some.prop: bob
src/main/java/sample/MyBean.java:
@Component
public class MyBean {
@Value("${some.prop}")
private String prop;
public MyBean() {}
@PostConstruct
public void init() {
System.out.println("================== " + prop + "================== ");
}
}
和src/main/java/sample/Application.java:
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
和src/main/java/sample/com/example/MainController.java
@Controller
public class MainController {
@RequestMapping(value="/login", method = RequestMethod.GET)
public ModelAndView risk(@RequestParam Optional<String> error) {
return new ModelAndView("views/login", "error", error);
}
}
您似乎漏扫描了您的包裹 "sample"。请确保您已扫描它。
@ComponentScan({
"sample" })
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
此外,您的 application.properties 是正确的。没问题。
看起来解决方案比我想象的要简单得多:
gradle bootRun
应该用于热重载模板
gradle 运行 不起作用(所有编译的 类 都只是在 build/ 中构建)
我有一个非常简单的 Spring 引导应用程序,class 下面有详细说明。
我的问题是 application.properties 文件及其自动配置方式。我试图通过设置 'spring.groovy.template.cache: false' 来获取 Groovy 模板以在开发中更新,但这不起作用。我添加了另外两个属性来查看是否正在读取 application.properties 文件。 'logging.level.org.springframework.web: ERROR' 仍然会导致 INFO 级别的消息打印到控制台。但是,some.prop 在应用程序启动时被正确读入 MyBean class。
是否缺少这些属性的配置声明?
src/main/resources/application.属性:
spring.groovy.template.cache: false
logging.level.org.springframework.web: ERROR
some.prop: bob
src/main/java/sample/MyBean.java:
@Component
public class MyBean {
@Value("${some.prop}")
private String prop;
public MyBean() {}
@PostConstruct
public void init() {
System.out.println("================== " + prop + "================== ");
}
}
和src/main/java/sample/Application.java:
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
和src/main/java/sample/com/example/MainController.java
@Controller
public class MainController {
@RequestMapping(value="/login", method = RequestMethod.GET)
public ModelAndView risk(@RequestParam Optional<String> error) {
return new ModelAndView("views/login", "error", error);
}
}
您似乎漏扫描了您的包裹 "sample"。请确保您已扫描它。
@ComponentScan({
"sample" })
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
此外,您的 application.properties 是正确的。没问题。
看起来解决方案比我想象的要简单得多:
gradle bootRun
应该用于热重载模板
gradle 运行 不起作用(所有编译的 类 都只是在 build/ 中构建)