Spring shell 阻止测试

Het*_*ett 4 spring spring-boot

当我将 spring shell 添加到项目中时

    <dependency>
        <groupId>org.springframework.shell</groupId>
        <artifactId>spring-shell-starter</artifactId>
        <version>2.0.1.RELEASE</version>
    </dependency>
Run Code Online (Sandbox Code Playgroud)

测试开始挂起并且永远不会结束。停止后我在日志中看到

2020-02-22 20:00:14.271  INFO 9812 --- [           main] o.s.s.c.ThreadPoolTaskScheduler          : Initializing ExecutorService 'taskScheduler'
2020-02-22 20:00:14.933  WARN 9812 --- [           main] org.jline                                : Unable to create a system terminal, creating a dumb terminal (enable debug logging for more information)
2020-02-22 20:00:15.229  INFO 9812 --- [           main] o.s.a.r.c.CachingConnectionFactory       : Attempting to connect to: [192.168.1.10:5672]
2020-02-22 20:00:15.312  INFO 9812 --- [           main] o.s.a.r.c.CachingConnectionFactory       : Created new connection: rabbitConnectionFactory#4c32d208:0/SimpleConnection@608c36a6 [delegate=amqp://admin@192.168.1.10:5672/, localPort= 65404]
2020-02-22 20:00:15.401  INFO 9812 --- [           main] c.umbrella.app.BackendApplicationTests   : Started BackendApplicationTests in 12.969 seconds (JVM running for 14.251)

Process finished with exit code -1
shell:>
Run Code Online (Sandbox Code Playgroud)

当我从 IDE 和 mvn 运行测试时,问题再次出现。如何避免测试出现问题?

Luk*_*ski 5

在 Spring Shell 2 中:

@SpringBootTest(properties = "spring.shell.interactive.enabled=false")
Run Code Online (Sandbox Code Playgroud)