public SingleNodeApplication run(String... args) {

		System.out.println(BannerUtils.displayBanner(getClass().getSimpleName(), null));

		ContainerBootstrapContext bootstrapContext = new ContainerBootstrapContext(new SingleNodeOptions());

		MessageBusClassLoaderFactory classLoaderFactory = new MessageBusClassLoaderFactory();

		DecryptorContext decryptorContext = new DecryptorContext();

		SpringApplicationBuilder admin = new SpringApplicationBuilder(SingleNodeOptions.class,
				ParentConfiguration.class)
				.logStartupInfo(false)
				.listeners(bootstrapContext.commandLineListener())
				.listeners(classLoaderFactory)
				.listeners(decryptorContext.propertiesDecryptor())
				.profiles(XdProfiles.ADMIN_PROFILE, XdProfiles.SINGLENODE_PROFILE)
				.initializers(new HsqldbServerProfileActivator())
				.child(SharedServerContextConfiguration.class, SingleNodeOptions.class)
				.resourceLoader(classLoaderFactory.getResolver())
				.logStartupInfo(false)
				.listeners(bootstrapContext.commandLineListener())
				.listeners(decryptorContext.propertiesDecryptor())
				.child(SingleNodeOptions.class, AdminServerApplication.class)
				.main(AdminServerApplication.class)
				.listeners(bootstrapContext.commandLineListener())
				.listeners(decryptorContext.propertiesDecryptor());
		admin.showBanner(false);
		admin.run(args);

		SpringApplicationBuilder container = admin
				.sibling(SingleNodeOptions.class, ContainerServerApplication.class)
				.logStartupInfo(false)
				.profiles(XdProfiles.CONTAINER_PROFILE, XdProfiles.SINGLENODE_PROFILE)
				.listeners(ApplicationUtils.mergeApplicationListeners(bootstrapContext.commandLineListener(),
						bootstrapContext.pluginContextInitializers()))
				.listeners(decryptorContext.propertiesDecryptor())
				.child(ContainerConfiguration.class)
				.main(ContainerServerApplication.class)
				.listeners(bootstrapContext.commandLineListener())
				.listeners(decryptorContext.propertiesDecryptor())
				.web(false);
		container.showBanner(false);
		container.run(args);

		adminContext = admin.context();

		containerContext = container.context();
		pluginContext = (ConfigurableApplicationContext) containerContext.getParent();

		return this;
	}
Single Node XD Runtime.

@author Dave Syer
@author David Turanski
@author Ilayaperumal Gopinathan
spring-xd-dirt/src/main/java/org/springframework/xd/dirt/server/singlenode/SingleNodeApplication.java