相关疑难解决方法(0)

使用Groovy配置中的Spring动态语言支持

我想使用Spring Framework的动态语言支持,从Groovy脚本创建一个可重新加载的 bean(在运行时!).我想避免xml配置,并在Spring BootApplication上下文中使用注释(或类似).

这是一个扩展的问题,这已经被问,扩展是,我确实希望得到我的手脏BeanPostProcessors,Handlers,Parsers,whatever it takes.

我已经快速浏览了ScriptFactoryPostProcessor的javadoc ,并提出了一些工作示例.我想知道为什么Application.groovy (v2)不起作用?


beans.xml - 有效!(但我想在 Application.groovy中定义bean而不是xml......)

<bean class="org.springframework.scripting.support.ScriptFactoryPostProcessor">
    <property name="defaultRefreshCheckDelay" value="1000" />
</bean>

<bean id="foobar0" class="org.springframework.scripting.groovy.GroovyScriptFactory">
    <constructor-arg value="file:/C:/someDir/src/main/static/FoobarService.groovy"/>
</bean>
Run Code Online (Sandbox Code Playgroud)

Application.groovy(v1) - 有效!(但这是一个非常难看的解决方法)

@SpringBootApplication
public class Application {
    public static void main(String[] args) {
        SpringApplication app = new SpringApplication(Application)
        // Add GroovyScriptFactory after Application is prepared...
        app.addListeners(new …
Run Code Online (Sandbox Code Playgroud)

java groovy spring spring-annotations spring-boot

9
推荐指数
1
解决办法
1437
查看次数

标签 统计

groovy ×1

java ×1

spring ×1

spring-annotations ×1

spring-boot ×1