public ContainerServerApplication run(String... args) {
		System.out.println(BannerUtils.displayBanner(getClass().getSimpleName(), null));

		try {
			ContainerBootstrapContext bootstrapContext = new ContainerBootstrapContext(new ContainerOptions());

			MessageBusClassLoaderFactory classLoaderFactory = new MessageBusClassLoaderFactory();

			DecryptorContext decryptorContext = new DecryptorContext();

			this.containerContext = new SpringApplicationBuilder(ContainerOptions.class, ParentConfiguration.class)
					.logStartupInfo(false)
					.profiles(XdProfiles.CONTAINER_PROFILE)
					.listeners(bootstrapContext.commandLineListener())
					.listeners(classLoaderFactory)
					.listeners(decryptorContext.propertiesDecryptor())
					.child(SharedServerContextConfiguration.class, ContainerOptions.class)
					.resourceLoader(classLoaderFactory.getResolver())
					.logStartupInfo(false)
					.listeners(bootstrapContext.commandLineListener())
					.listeners(decryptorContext.propertiesDecryptor())
					.child(ContainerServerApplication.class)
					.logStartupInfo(false)
					.listeners(
							ApplicationUtils.mergeApplicationListeners(bootstrapContext.commandLineListener(),
									bootstrapContext.pluginContextInitializers()))
					.child(ContainerConfiguration.class)
					.listeners(bootstrapContext.commandLineListener())
					.listeners(decryptorContext.propertiesDecryptor())
					.initializers(new IdInitializer())
					.showBanner(false)
					.run(args);
		}
		catch (Exception e) {
			handleFieldErrors(e);
		}
		return this;
	}
The boot application class for a Container server.

@author Mark Fisher
@author David Turanski
@author Marius Bogoevici
@author Gunnar Hillert
spring-xd-dirt/src/main/java/org/springframework/xd/dirt/server/container/ContainerServerApplication.java