spring_reference/VII. Spring Boot CLI/55.1.1. Deduced “grab” depe...

1.3 KiB
Raw Blame History

55.1.1. 推断"grab"依赖

标准的Groovy包含一个@Grab注解它允许你声明对第三方库的依赖。这项有用的技术允许Groovy以和Maven或Gradle相同的方式下载jars但不需要使用构建工具。

Spring Boot进一步延伸了该技术它会基于你的代码尝试推导你"grab"哪个库。例如由于WebApplication代码上使用了@RestController注解,"Tomcat"和"Spring MVC"将被获取grabbed

下面items被用作"grab hints"

items Grabs
JdbcTemplate,NamedParameterJdbcTemplate,DataSource JDBC应用
@EnableJms JMS应用
@EnableCaching Caching abstraction
@Test JUnit
@EnableRabbit RabbitMQ
@EnableReactor Project Reactor
继承Specification Spock test
@EnableBatchProcessing Spring Batch
@MessageEndpoint,@EnableIntegrationPatterns Spring Integration
@EnableDeviceResolver Spring Mobile
@Controller,@RestController,@EnableWebMvc Spring MVC + Embedded Tomcat
@EnableWebSecurity Spring Security
@EnableTransactionManagement Spring Transaction Management

想要理解自定义是如何生效可以查看Spring Boot CLI源码中的CompilerAutoConfiguration子类。