spring-boot/spring-boot-cli/samples
Phillip Webb b19f6bb238 Isolate class loading for launched CLI apps
Rework classloading for launched applications so that CLI classes and
dependencies are not visible. This change allows many of the previous
hacks and workarounds to be removed.

With the exception of the 'org.springframework.boot.groovy' package
and 'groovy-all' all user required depndencies are now pulled in
via @Grab annotations.

The updated classloading algorithm has enabled the following changes:

- AetherGrapeEngine is now back in the cli project and the
  spring-boot-cli-grape project has been removed. The AetherGrapeEngine
  has also been simplified.

- The TestCommand now launches a TestRunner (similar in design to the
  SpringApplicationRunner) and report test failures directly using
  the junit TextListener. Adding custom 'testers' source to the users
  project is no longer required. The previous 'double compile' for
  tests has also been removed.

- Utility classes have been removed in favor of using versions from
  spring-core.

- The CLI jar is now packaged using the 'boot-loader' rather than using
  the maven shade plugin.

This commit also applied minor polish refactoring to a number of
classes.
2013-11-04 23:19:46 -08:00
..
actuator.groovy Use simplified @Grab where possible 2013-10-09 10:16:01 -04:00
app.groovy Change package names zero->boot 2013-07-26 14:13:41 +01:00
device.groovy Use simplified @Grab where possible 2013-10-09 10:16:01 -04:00
http.groovy Startup time for CLI app much quicker now 2013-09-05 17:14:08 -07:00
integration.groovy Change package names zero->boot 2013-07-26 14:13:41 +01:00
jms.groovy Polish 2013-11-04 22:17:38 -08:00
job.groovy Polish 2013-11-04 22:17:38 -08:00
rabbit.groovy Polish 2013-11-04 22:17:38 -08:00
reactor.groovy Polish 2013-11-04 22:17:38 -08:00
runner.groovy Polish 2013-11-04 22:17:38 -08:00
runner.xml Change package names zero->boot 2013-07-26 14:13:41 +01:00
template.groovy Isolate class loading for launched CLI apps 2013-11-04 23:19:46 -08:00
tx.groovy Polish 2013-11-04 22:17:38 -08:00
ui.groovy Use simplified @Grab where possible 2013-10-09 10:16:01 -04:00
web.groovy Polish 2013-11-04 22:17:38 -08:00