Skip to content

Commit b67ebc7

Browse files
author
Dave Syer
committed
Startup time for CLI app much quicker now
The Boot resolver didn't transfer enough of the settings of the default ChainResolver. Adding a boolean flag was enough to make the chatter die down for dependencies that were unneeded. [Fixes #55358344] [bs-291]
1 parent 013d516 commit b67ebc7

File tree

4 files changed

+29
-16
lines changed

4 files changed

+29
-16
lines changed

Diff for: spring-boot-cli/samples/http.groovy

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
package org.test
2+
3+
@Grab("org.codehaus.groovy.modules.http-builder:http-builder:0.5.2") // This one just to test dependency resolution
4+
import groovyx.net.http.*
5+
6+
@Controller
7+
class Example implements CommandLineRunner {
8+
9+
@RequestMapping("/")
10+
@ResponseBody
11+
public String helloWorld() {
12+
return "World!"
13+
}
14+
15+
void run(String... args) {
16+
def world = new RESTClient("http://localhost:8080").get(path:"/").data.text
17+
print "Hello " + world
18+
}
19+
}

Diff for: spring-boot-cli/src/main/java/org/springframework/boot/cli/compiler/GrapeEngineCustomizer.java

+1
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,7 @@ private void setupResolver(IvySettings settings) {
8383
SpringBootResolver springBootResolver = new SpringBootResolver(
8484
grapesResolver.getResolvers());
8585
springBootResolver.setSettings(settings);
86+
springBootResolver.setReturnFirst(grapesResolver.isReturnFirst());
8687
springBootResolver.setName("springBoot");
8788

8889
if (!Boolean.getBoolean("disableSpringSnapshotRepos")) {

Diff for: spring-boot-cli/src/test/java/org/springframework/boot/cli/SampleIntegrationTests.java

+7
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,13 @@ public void actuatorSample() throws Exception {
155155
assertEquals("{\"message\":\"Hello World!\"}", result);
156156
}
157157

158+
@Test
159+
public void httpSample() throws Exception {
160+
start("samples/http.groovy");
161+
String output = this.outputCapture.getOutputAndRelease();
162+
assertTrue("Wrong output: " + output, output.contains("Hello World"));
163+
}
164+
158165
@Test
159166
public void integrationSample() throws Exception {
160167
start("samples/integration.groovy");

Diff for: spring-boot-cli/src/test/resources/logback.xml

+2-16
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,5 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<configuration>
3-
<property name="CONSOLE_LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} %5p ${PID:- } [%t] --- %-40.40logger{39} : %m%n%wex"/>
4-
5-
<conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" />
6-
7-
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
8-
<encoder>
9-
<pattern>${CONSOLE_LOG_PATTERN}</pattern>
10-
</encoder>
11-
</appender>
12-
13-
<root level="INFO">
14-
<appender-ref ref="CONSOLE" />
15-
</root>
16-
17-
<!-- logger name="org.springframework" level="DEBUG"/-->
18-
3+
<include resource="org/springframework/boot/logging/logback/base.xml"/>
4+
<!-- logger name="org.springframework.web" level="DEBUG"/-->
195
</configuration>

0 commit comments

Comments
 (0)