diff a/.gitignore b/.gitignore
--- a/.gitignore
+++ b/.gitignore
@@ -16,10 +16,13 @@
 .DS_Store
 
 # Useful for local m2 cache when docker building
 .m2
 
+# Ignore UltraEdit .bak files
+*.bak
+
 # Ignore dependency reduced pom
 dependency-reduced-pom.xml
 
 # Ignore coverage report
 core/coverage/coverage-report
diff a/application/coverage/pom.xml b/application/coverage/pom.xml
--- a/application/coverage/pom.xml
+++ b/application/coverage/pom.xml
@@ -40,10 +40,15 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>coverage</artifactId>
 	<name>Code coverage report jmc/application</name>
 	<packaging>pom</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<dependencies>
 		<!-- First all the modules in application/ -->
 		<dependency>
 			<groupId>org.openjdk.jmc</groupId>
 			<artifactId>org.openjdk.jmc.alert</artifactId>
@@ -508,8 +513,16 @@
 							<outputDirectory>${basedir}/coverage-report</outputDirectory>
 						</configuration>
 					</execution>
 				</executions>
 			</plugin>
+			<plugin>
+  				<groupId>com.diffplug.spotless</groupId>
+  				<artifactId>spotless-maven-plugin</artifactId>
+  				<version>${spotless.version}</version>
+  				<configuration>
+    				<skip>true</skip>
+  				</configuration>
+			</plugin>		
 		</plugins>
 	</build>
 </project>
diff a/application/l10n/org.openjdk.jmc.alert.ja/pom.xml b/application/l10n/org.openjdk.jmc.alert.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.alert.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.alert.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.alert.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.alert.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.alert.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.alert.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.alert.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.alert.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.browser.attach.ja/pom.xml b/application/l10n/org.openjdk.jmc.browser.attach.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.browser.attach.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.browser.attach.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.browser.attach.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.browser.attach.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.browser.attach.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.browser.attach.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.browser.attach.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.browser.attach.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.browser.ja/pom.xml b/application/l10n/org.openjdk.jmc.browser.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.browser.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.browser.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.browser.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.browser.jdp.ja/pom.xml b/application/l10n/org.openjdk.jmc.browser.jdp.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.browser.jdp.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.browser.jdp.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.browser.jdp.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.browser.jdp.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.browser.jdp.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.browser.jdp.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.browser.jdp.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.browser.jdp.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.browser.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.browser.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.browser.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.browser.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.browser.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.console.persistence.ja/pom.xml b/application/l10n/org.openjdk.jmc.console.persistence.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.console.persistence.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.console.persistence.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.persistence.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.console.persistence.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.console.persistence.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.console.persistence.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.console.persistence.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.persistence.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.console.ui.diagnostic.ja/pom.xml b/application/l10n/org.openjdk.jmc.console.ui.diagnostic.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.console.ui.diagnostic.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.console.ui.diagnostic.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.ui.diagnostic.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.console.ui.diagnostic.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.console.ui.diagnostic.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.console.ui.diagnostic.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.console.ui.diagnostic.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.ui.diagnostic.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.console.ui.ja/pom.xml b/application/l10n/org.openjdk.jmc.console.ui.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.console.ui.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.console.ui.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.ui.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.console.ui.mbeanbrowser.ja/pom.xml b/application/l10n/org.openjdk.jmc.console.ui.mbeanbrowser.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.console.ui.mbeanbrowser.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.console.ui.mbeanbrowser.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.ui.mbeanbrowser.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.console.ui.mbeanbrowser.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.console.ui.mbeanbrowser.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.console.ui.mbeanbrowser.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.console.ui.mbeanbrowser.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.ui.mbeanbrowser.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.console.ui.notification.ja/pom.xml b/application/l10n/org.openjdk.jmc.console.ui.notification.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.console.ui.notification.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.console.ui.notification.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.ui.notification.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.console.ui.notification.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.console.ui.notification.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.console.ui.notification.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.console.ui.notification.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.ui.notification.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.console.ui.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.console.ui.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.console.ui.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.console.ui.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.ui.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.docs.ja/pom.xml b/application/l10n/org.openjdk.jmc.docs.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.docs.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.docs.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.docs.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.docs.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.docs.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.docs.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.docs.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.docs.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.feature.ja/pom.xml b/application/l10n/org.openjdk.jmc.feature.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.feature.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.feature.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.feature.ja</artifactId>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.feature.rcp.ja/pom.xml b/application/l10n/org.openjdk.jmc.feature.rcp.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.feature.rcp.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.feature.rcp.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.feature.rcp.ja</artifactId>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.feature.rcp.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.feature.rcp.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.feature.rcp.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.feature.rcp.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.feature.rcp.zh_CN</artifactId>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.feature.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.feature.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.feature.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.feature.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.feature.zh_CN</artifactId>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.flightrecorder.controlpanel.ui.ja/pom.xml b/application/l10n/org.openjdk.jmc.flightrecorder.controlpanel.ui.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.flightrecorder.controlpanel.ui.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.flightrecorder.controlpanel.ui.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.flightrecorder.controlpanel.ui.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.flightrecorder.controlpanel.ui.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.flightrecorder.controlpanel.ui.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.flightrecorder.controlpanel.ui.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.flightrecorder.controlpanel.ui.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.flightrecorder.controlpanel.ui.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.flightrecorder.ui.ja/pom.xml b/application/l10n/org.openjdk.jmc.flightrecorder.ui.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.flightrecorder.ui.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.flightrecorder.ui.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.flightrecorder.ui.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.flightrecorder.ui.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.flightrecorder.ui.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.flightrecorder.ui.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.flightrecorder.ui.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.flightrecorder.ui.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.greychart.ui.ja/pom.xml b/application/l10n/org.openjdk.jmc.greychart.ui.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.greychart.ui.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.greychart.ui.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.greychart.ui.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.greychart.ui.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.greychart.ui.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.greychart.ui.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.greychart.ui.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.greychart.ui.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.ide.jdt.ja/pom.xml b/application/l10n/org.openjdk.jmc.ide.jdt.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.ide.jdt.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.ide.jdt.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.ide.jdt.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.ide.jdt.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.ide.jdt.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.ide.jdt.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.ide.jdt.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.ide.jdt.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.ide.ui.ja/pom.xml b/application/l10n/org.openjdk.jmc.ide.ui.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.ide.ui.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.ide.ui.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.ide.ui.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.ide.ui.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.ide.ui.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.ide.ui.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.ide.ui.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.ide.ui.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.rcp.application.ja/pom.xml b/application/l10n/org.openjdk.jmc.rcp.application.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.rcp.application.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.rcp.application.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.rcp.application.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.rcp.application.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.rcp.application.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.rcp.application.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.rcp.application.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.rcp.application.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.rcp.intro.ja/pom.xml b/application/l10n/org.openjdk.jmc.rcp.intro.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.rcp.intro.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.rcp.intro.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.rcp.intro.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.rcp.intro.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.rcp.intro.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.rcp.intro.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.rcp.intro.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.rcp.intro.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.rjmx.ja/pom.xml b/application/l10n/org.openjdk.jmc.rjmx.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.rjmx.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.rjmx.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.rjmx.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.rjmx.ui.ja/pom.xml b/application/l10n/org.openjdk.jmc.rjmx.ui.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.rjmx.ui.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.rjmx.ui.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.rjmx.ui.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.rjmx.ui.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.rjmx.ui.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.rjmx.ui.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.rjmx.ui.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.rjmx.ui.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.rjmx.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.rjmx.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.rjmx.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.rjmx.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.rjmx.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.ui.common.ja/pom.xml b/application/l10n/org.openjdk.jmc.ui.common.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.ui.common.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.ui.common.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.ui.common.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.ui.common.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.ui.common.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.ui.common.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.ui.common.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.ui.common.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.ui.ja/pom.xml b/application/l10n/org.openjdk.jmc.ui.ja/pom.xml
--- a/application/l10n/org.openjdk.jmc.ui.ja/pom.xml
+++ b/application/l10n/org.openjdk.jmc.ui.ja/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.ui.ja</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/org.openjdk.jmc.ui.zh_CN/pom.xml b/application/l10n/org.openjdk.jmc.ui.zh_CN/pom.xml
--- a/application/l10n/org.openjdk.jmc.ui.zh_CN/pom.xml
+++ b/application/l10n/org.openjdk.jmc.ui.zh_CN/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.l10n</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.ui.zh_CN</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/l10n/pom.xml b/application/l10n/pom.xml
--- a/application/l10n/pom.xml
+++ b/application/l10n/pom.xml
@@ -38,10 +38,15 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>missioncontrol.application.l10n</artifactId>
 	<packaging>pom</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<modules>
 		<module>org.openjdk.jmc.alert.ja</module>
 		<module>org.openjdk.jmc.alert.zh_CN</module>
 		<module>org.openjdk.jmc.browser.attach.ja</module>
 		<module>org.openjdk.jmc.browser.attach.zh_CN</module>
diff a/application/org.openjdk.jmc.alert/pom.xml b/application/org.openjdk.jmc.alert/pom.xml
--- a/application/org.openjdk.jmc.alert/pom.xml
+++ b/application/org.openjdk.jmc.alert/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.alert</artifactId>
 	<packaging>eclipse-plugin</packaging>
+		
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.alert/src/main/java/org/openjdk/jmc/alert/AlertDialog.java b/application/org.openjdk.jmc.alert/src/main/java/org/openjdk/jmc/alert/AlertDialog.java
--- a/application/org.openjdk.jmc.alert/src/main/java/org/openjdk/jmc/alert/AlertDialog.java
+++ b/application/org.openjdk.jmc.alert/src/main/java/org/openjdk/jmc/alert/AlertDialog.java
@@ -201,11 +201,11 @@
 		sash.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
 		TableViewer viewer = createViewer(sash);
 		viewer.getTable().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
 		m_text = createMessage(sash);
 		m_text.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));
-		sash.setWeights(new int[] {75,25});
+		sash.setWeights(new int[] {75, 25});
 		sash.setLayout(new GridLayout());
 		return dialogArea;
 	}
 
 	private Text createMessage(Composite parent) {
@@ -248,6 +248,6 @@
 	public void refreshAlertDialog() {
 		if (m_viewer != null && !m_viewer.getTable().isDisposed()) {
 			m_viewer.setInput(AlertPlugin.getDefault().getAlerts());
 		}
 	}
-}
+}
diff a/application/org.openjdk.jmc.attach/pom.xml b/application/org.openjdk.jmc.attach/pom.xml
--- a/application/org.openjdk.jmc.attach/pom.xml
+++ b/application/org.openjdk.jmc.attach/pom.xml
@@ -38,10 +38,15 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.attach</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>org.eclipse.tycho</groupId>
 				<artifactId>tycho-compiler-plugin</artifactId>
diff a/application/org.openjdk.jmc.browser.attach/pom.xml b/application/org.openjdk.jmc.browser.attach/pom.xml
--- a/application/org.openjdk.jmc.browser.attach/pom.xml
+++ b/application/org.openjdk.jmc.browser.attach/pom.xml
@@ -38,10 +38,15 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.browser.attach</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>org.eclipse.tycho</groupId>
 				<artifactId>tycho-compiler-plugin</artifactId>
diff a/application/org.openjdk.jmc.browser.attach/src/main/java/org/openjdk/jmc/browser/attach/LocalConnectionDescriptor.java b/application/org.openjdk.jmc.browser.attach/src/main/java/org/openjdk/jmc/browser/attach/LocalConnectionDescriptor.java
--- a/application/org.openjdk.jmc.browser.attach/src/main/java/org/openjdk/jmc/browser/attach/LocalConnectionDescriptor.java
+++ b/application/org.openjdk.jmc.browser.attach/src/main/java/org/openjdk/jmc/browser/attach/LocalConnectionDescriptor.java
@@ -173,12 +173,11 @@
 	 *
 	 * @throws AgentLoadException
 	 * @throws IOException
 	 * @throws AttachNotSupportedException
 	 */
-	private void tryJCMDStyleStartingOfTheAgent(String name)
-			throws IOException, AgentLoadException {
+	private void tryJCMDStyleStartingOfTheAgent(String name) throws IOException, AgentLoadException {
 		try {
 			// Enforce a timeout here to ensure we don't block forever if the JVM is busy/suspended. See JMC-5398
 			ExecutorService service = Executors.newSingleThreadExecutor();
 			Future<Void> future = service.submit(new Callable<Void>() {
 				@Override
@@ -189,11 +188,12 @@
 						vm = VirtualMachine.attach(name);
 						LocalJVMToolkit.executeCommandForPid(vm, name, "ManagementAgent.start_local"); //$NON-NLS-1$
 						// Get in memory Service URL...
 						JMXServiceURL inMemURL = LocalJVMToolkit.getInMemoryURLFromPID(Integer.parseInt(name));
 						if (inMemURL == null) {
-							BrowserAttachPlugin.getPluginLogger().log(Level.SEVERE, COULD_NOT_RETRIEVE_URL_ERROR_MESSAGE);
+							BrowserAttachPlugin.getPluginLogger().log(Level.SEVERE,
+									COULD_NOT_RETRIEVE_URL_ERROR_MESSAGE);
 							throw new LazyServiceURLResolveException(COULD_NOT_RETRIEVE_URL_ERROR_MESSAGE);
 						}
 						url = inMemURL;
 					} finally {
 						if (vm != null) {
diff a/application/org.openjdk.jmc.browser.attach/src/main/java/org/openjdk/jmc/browser/attach/LocalJVMToolkit.java b/application/org.openjdk.jmc.browser.attach/src/main/java/org/openjdk/jmc/browser/attach/LocalJVMToolkit.java
--- a/application/org.openjdk.jmc.browser.attach/src/main/java/org/openjdk/jmc/browser/attach/LocalJVMToolkit.java
+++ b/application/org.openjdk.jmc.browser.attach/src/main/java/org/openjdk/jmc/browser/attach/LocalJVMToolkit.java
@@ -114,11 +114,11 @@
 
 	static final String LOCAL_CONNECTOR_ADDRESS_PROP = "com.sun.management.jmxremote.localConnectorAddress"; //$NON-NLS-1$
 	static final String JVM_ARGS_PROP = "sun.jvm.args"; //$NON-NLS-1$
 	static final String JVM_FLAGS_PROP = "sun.jvm.flags"; //$NON-NLS-1$
 	static final String JAVA_COMMAND_PROP = "sun.java.command"; //$NON-NLS-1$
-	
+
 	private static final int TIMEOUT_THRESHOLD = 5;
 
 	private LocalJVMToolkit() {
 		// Toolkit
 	}
@@ -258,17 +258,19 @@
 							mvm.detach();
 						}
 					} catch (Exception x) {
 						// ignore
 					}
-					connDesc = createDescriptor(name, jvmArgs, vmid, connectable, type, jvmArch, address, version, isDebug);
+					connDesc = createDescriptor(name, jvmArgs, vmid, connectable, type, jvmArch, address, version,
+							isDebug);
 					return connDesc;
 				}
 			});
 			return future.get(TIMEOUT_THRESHOLD, TimeUnit.SECONDS);
 		} catch (Exception e) {
-			BrowserAttachPlugin.getPluginLogger().log(Level.WARNING, "Failed to create descriptor for jvm with PID " + vmid, e); //$NON-NLS-1$
+			BrowserAttachPlugin.getPluginLogger().log(Level.WARNING,
+					"Failed to create descriptor for jvm with PID " + vmid, e); //$NON-NLS-1$
 			return null;
 		}
 	}
 
 	/*
@@ -332,25 +334,25 @@
 						connDesc = createAttachableJvmDescriptor(vmd);
 					}
 
 					if (connDesc != null && !connDesc.getServerDescriptor().getJvmInfo().isUnconnectable()) {
 						map.put(vmid, connDesc);
-					} 
+					}
 				}
 			} catch (NumberFormatException e) {
 				// do not support vmid different than pid
 			}
 		}
 	}
 
 	private static DiscoveryEntry createAttachableJvmDescriptor(VirtualMachineDescriptor vmd) {
 		try {
 			// Enforce a timeout here to ensure we don't block forever if the JVM is busy or suspended. See JMC-5398.
-			 ExecutorService service = Executors.newSingleThreadExecutor();
-			 Future<DiscoveryEntry> future = service.submit(new Callable<DiscoveryEntry>() {
-				 @Override
-				 public DiscoveryEntry call() throws Exception {
+			ExecutorService service = Executors.newSingleThreadExecutor();
+			Future<DiscoveryEntry> future = service.submit(new Callable<DiscoveryEntry>() {
+				@Override
+				public DiscoveryEntry call() throws Exception {
 					DiscoveryEntry connDesc = null;
 					Connectable connectable;
 					boolean isDebug = false;
 					JVMType jvmType = JVMType.OTHER;
 					JVMArch jvmArch = JVMArch.OTHER;
@@ -394,18 +396,18 @@
 						if (vm != null) {
 							vm.detach();
 						}
 					}
 					if (connectable.isAttachable()) {
-						connDesc = createDescriptor(javaArgs, jvmArgs, Integer.parseInt(vmd.id()), connectable, jvmType, jvmArch,
-								address, version, isDebug);
+						connDesc = createDescriptor(javaArgs, jvmArgs, Integer.parseInt(vmd.id()), connectable, jvmType,
+								jvmArch, address, version, isDebug);
 					}
 					BrowserAttachPlugin.getPluginLogger().info("Done resolving PID " + vmd); //$NON-NLS-1$
 					return connDesc;
-				 }
-			 });
-			 return future.get(TIMEOUT_THRESHOLD, TimeUnit.SECONDS);
+				}
+			});
+			return future.get(TIMEOUT_THRESHOLD, TimeUnit.SECONDS);
 		} catch (Throwable t) {
 			// Serious problem for this JVM, let's skip this one.
 			if (!isErrorMessageSent) {
 				BrowserAttachPlugin.getPluginLogger().log(Level.FINER,
 						"Scanning using attach/getAgentProperties failed on " //$NON-NLS-1$
diff a/application/org.openjdk.jmc.browser.jdp/pom.xml b/application/org.openjdk.jmc.browser.jdp/pom.xml
--- a/application/org.openjdk.jmc.browser.jdp/pom.xml
+++ b/application/org.openjdk.jmc.browser.jdp/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.browser.jdp</artifactId>
 	<packaging>eclipse-plugin</packaging>
+	
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.browser/pom.xml b/application/org.openjdk.jmc.browser/pom.xml
--- a/application/org.openjdk.jmc.browser/pom.xml
+++ b/application/org.openjdk.jmc.browser/pom.xml
@@ -38,10 +38,15 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.browser</artifactId>
 	<packaging>eclipse-plugin</packaging>
+		
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+	
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>org.eclipse.tycho</groupId>
 				<artifactId>tycho-compiler-plugin</artifactId>
diff a/application/org.openjdk.jmc.commands/pom.xml b/application/org.openjdk.jmc.commands/pom.xml
--- a/application/org.openjdk.jmc.commands/pom.xml
+++ b/application/org.openjdk.jmc.commands/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.commands</artifactId>
 	<packaging>eclipse-plugin</packaging>
+		
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.console.jconsole/pom.xml b/application/org.openjdk.jmc.console.jconsole/pom.xml
--- a/application/org.openjdk.jmc.console.jconsole/pom.xml
+++ b/application/org.openjdk.jmc.console.jconsole/pom.xml
@@ -38,10 +38,15 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.jconsole</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>org.eclipse.tycho</groupId>
 				<artifactId>tycho-compiler-plugin</artifactId>
diff a/application/org.openjdk.jmc.console.pde/pom.xml b/application/org.openjdk.jmc.console.pde/pom.xml
--- a/application/org.openjdk.jmc.console.pde/pom.xml
+++ b/application/org.openjdk.jmc.console.pde/pom.xml
@@ -39,6 +39,10 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.pde</artifactId>
 	<version>2.0.0-SNAPSHOT</version>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.console.persistence/pom.xml b/application/org.openjdk.jmc.console.persistence/pom.xml
--- a/application/org.openjdk.jmc.console.persistence/pom.xml
+++ b/application/org.openjdk.jmc.console.persistence/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.persistence</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.console.twitter/pom.xml b/application/org.openjdk.jmc.console.twitter/pom.xml
--- a/application/org.openjdk.jmc.console.twitter/pom.xml
+++ b/application/org.openjdk.jmc.console.twitter/pom.xml
@@ -39,6 +39,10 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.twitter</artifactId>
 	<version>1.0.2-SNAPSHOT</version>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.console.ui.diagnostic/pom.xml b/application/org.openjdk.jmc.console.ui.diagnostic/pom.xml
--- a/application/org.openjdk.jmc.console.ui.diagnostic/pom.xml
+++ b/application/org.openjdk.jmc.console.ui.diagnostic/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.ui.diagnostic</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>	
 </project>
diff a/application/org.openjdk.jmc.console.ui.mbeanbrowser/pom.xml b/application/org.openjdk.jmc.console.ui.mbeanbrowser/pom.xml
--- a/application/org.openjdk.jmc.console.ui.mbeanbrowser/pom.xml
+++ b/application/org.openjdk.jmc.console.ui.mbeanbrowser/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.ui.mbeanbrowser</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.console.ui.notification/pom.xml b/application/org.openjdk.jmc.console.ui.notification/pom.xml
--- a/application/org.openjdk.jmc.console.ui.notification/pom.xml
+++ b/application/org.openjdk.jmc.console.ui.notification/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.ui.notification</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.console.ui.subscriptions/pom.xml b/application/org.openjdk.jmc.console.ui.subscriptions/pom.xml
--- a/application/org.openjdk.jmc.console.ui.subscriptions/pom.xml
+++ b/application/org.openjdk.jmc.console.ui.subscriptions/pom.xml
@@ -39,6 +39,10 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.ui.subscriptions</artifactId>
 	<version>0.0.3-SNAPSHOT</version>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.console.ui/pom.xml b/application/org.openjdk.jmc.console.ui/pom.xml
--- a/application/org.openjdk.jmc.console.ui/pom.xml
+++ b/application/org.openjdk.jmc.console.ui/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.ui</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.docs/pom.xml b/application/org.openjdk.jmc.docs/pom.xml
--- a/application/org.openjdk.jmc.docs/pom.xml
+++ b/application/org.openjdk.jmc.docs/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.docs</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.feature.console.ui.subscriptions/pom.xml b/application/org.openjdk.jmc.feature.console.ui.subscriptions/pom.xml
--- a/application/org.openjdk.jmc.feature.console.ui.subscriptions/pom.xml
+++ b/application/org.openjdk.jmc.feature.console.ui.subscriptions/pom.xml
@@ -39,6 +39,10 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.feature.console.ui.subscriptions</artifactId>
 	<version>0.0.3-SNAPSHOT</version>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.feature.console/pom.xml b/application/org.openjdk.jmc.feature.console/pom.xml
--- a/application/org.openjdk.jmc.feature.console/pom.xml
+++ b/application/org.openjdk.jmc.feature.console/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.feature.console</artifactId>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.feature.core/pom.xml b/application/org.openjdk.jmc.feature.core/pom.xml
--- a/application/org.openjdk.jmc.feature.core/pom.xml
+++ b/application/org.openjdk.jmc.feature.core/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.feature.core</artifactId>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.feature.flightrecorder.ext.g1/pom.xml b/application/org.openjdk.jmc.feature.flightrecorder.ext.g1/pom.xml
--- a/application/org.openjdk.jmc.feature.flightrecorder.ext.g1/pom.xml
+++ b/application/org.openjdk.jmc.feature.flightrecorder.ext.g1/pom.xml
@@ -39,6 +39,10 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.feature.flightrecorder.ext.g1</artifactId>
 	<version>1.0.0-SNAPSHOT</version>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.feature.flightrecorder.ext.jfx/pom.xml b/application/org.openjdk.jmc.feature.flightrecorder.ext.jfx/pom.xml
--- a/application/org.openjdk.jmc.feature.flightrecorder.ext.jfx/pom.xml
+++ b/application/org.openjdk.jmc.feature.flightrecorder.ext.jfx/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.feature.flightrecorder.ext.jfx</artifactId>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.feature.flightrecorder.metadata/pom.xml b/application/org.openjdk.jmc.feature.flightrecorder.metadata/pom.xml
--- a/application/org.openjdk.jmc.feature.flightrecorder.metadata/pom.xml
+++ b/application/org.openjdk.jmc.feature.flightrecorder.metadata/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.feature.flightrecorder.metadata</artifactId>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.feature.flightrecorder/pom.xml b/application/org.openjdk.jmc.feature.flightrecorder/pom.xml
--- a/application/org.openjdk.jmc.feature.flightrecorder/pom.xml
+++ b/application/org.openjdk.jmc.feature.flightrecorder/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.feature.flightrecorder</artifactId>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.feature.ide.launch/pom.xml b/application/org.openjdk.jmc.feature.ide.launch/pom.xml
--- a/application/org.openjdk.jmc.feature.ide.launch/pom.xml
+++ b/application/org.openjdk.jmc.feature.ide.launch/pom.xml
@@ -39,6 +39,10 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.feature.ide.launch</artifactId>
 	<version>0.0.4-SNAPSHOT</version>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.feature.ide/pom.xml b/application/org.openjdk.jmc.feature.ide/pom.xml
--- a/application/org.openjdk.jmc.feature.ide/pom.xml
+++ b/application/org.openjdk.jmc.feature.ide/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.feature.ide</artifactId>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.feature.jconsole/pom.xml b/application/org.openjdk.jmc.feature.jconsole/pom.xml
--- a/application/org.openjdk.jmc.feature.jconsole/pom.xml
+++ b/application/org.openjdk.jmc.feature.jconsole/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.feature.jconsole</artifactId>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.feature.joverflow/pom.xml b/application/org.openjdk.jmc.feature.joverflow/pom.xml
--- a/application/org.openjdk.jmc.feature.joverflow/pom.xml
+++ b/application/org.openjdk.jmc.feature.joverflow/pom.xml
@@ -39,6 +39,10 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.feature.joverflow</artifactId>
 	<version>1.0.1-SNAPSHOT</version>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.feature.license/pom.xml b/application/org.openjdk.jmc.feature.license/pom.xml
--- a/application/org.openjdk.jmc.feature.license/pom.xml
+++ b/application/org.openjdk.jmc.feature.license/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.feature.license</artifactId>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.feature.pde/pom.xml b/application/org.openjdk.jmc.feature.pde/pom.xml
--- a/application/org.openjdk.jmc.feature.pde/pom.xml
+++ b/application/org.openjdk.jmc.feature.pde/pom.xml
@@ -39,6 +39,10 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.feature.pde</artifactId>
 	<version>2.0.0-SNAPSHOT</version>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.feature.rcp.update/pom.xml b/application/org.openjdk.jmc.feature.rcp.update/pom.xml
--- a/application/org.openjdk.jmc.feature.rcp.update/pom.xml
+++ b/application/org.openjdk.jmc.feature.rcp.update/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.feature.rcp.update</artifactId>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.feature.rcp/pom.xml b/application/org.openjdk.jmc.feature.rcp/pom.xml
--- a/application/org.openjdk.jmc.feature.rcp/pom.xml
+++ b/application/org.openjdk.jmc.feature.rcp/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.feature.rcp</artifactId>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.feature.twitter/pom.xml b/application/org.openjdk.jmc.feature.twitter/pom.xml
--- a/application/org.openjdk.jmc.feature.twitter/pom.xml
+++ b/application/org.openjdk.jmc.feature.twitter/pom.xml
@@ -39,6 +39,10 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.feature.twitter</artifactId>
 	<version>1.0.2-SNAPSHOT</version>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.flightrecorder.configuration/pom.xml b/application/org.openjdk.jmc.flightrecorder.configuration/pom.xml
--- a/application/org.openjdk.jmc.flightrecorder.configuration/pom.xml
+++ b/application/org.openjdk.jmc.flightrecorder.configuration/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.flightrecorder.configuration</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>	
 </project>
diff a/application/org.openjdk.jmc.flightrecorder.configuration/src/main/java/org/openjdk/jmc/flightrecorder/configuration/events/IEventConfiguration.java b/application/org.openjdk.jmc.flightrecorder.configuration/src/main/java/org/openjdk/jmc/flightrecorder/configuration/events/IEventConfiguration.java
--- a/application/org.openjdk.jmc.flightrecorder.configuration/src/main/java/org/openjdk/jmc/flightrecorder/configuration/events/IEventConfiguration.java
+++ b/application/org.openjdk.jmc.flightrecorder.configuration/src/main/java/org/openjdk/jmc/flightrecorder/configuration/events/IEventConfiguration.java
@@ -38,12 +38,12 @@
 import org.openjdk.jmc.common.unit.IConstrainedMap;
 import org.openjdk.jmc.common.unit.IMutableConstrainedMap;
 import org.openjdk.jmc.flightrecorder.configuration.spi.IConfigurationStorageDelegate;
 
 /**
- * Interface for JDK Flight Recorder configurations. Note that this interface is (and should
- * remain) agnostic as to how the configuration is represented.
+ * Interface for JDK Flight Recorder configurations. Note that this interface is (and should remain)
+ * agnostic as to how the configuration is represented.
  */
 public interface IEventConfiguration {
 	String JFC_FILE_EXTENSION = ".jfc"; //$NON-NLS-1$
 
 	/**
diff a/application/org.openjdk.jmc.flightrecorder.controlpanel.ui.configuration/pom.xml b/application/org.openjdk.jmc.flightrecorder.controlpanel.ui.configuration/pom.xml
--- a/application/org.openjdk.jmc.flightrecorder.controlpanel.ui.configuration/pom.xml
+++ b/application/org.openjdk.jmc.flightrecorder.controlpanel.ui.configuration/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.flightrecorder.controlpanel.ui.configuration</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.flightrecorder.controlpanel.ui/pom.xml b/application/org.openjdk.jmc.flightrecorder.controlpanel.ui/pom.xml
--- a/application/org.openjdk.jmc.flightrecorder.controlpanel.ui/pom.xml
+++ b/application/org.openjdk.jmc.flightrecorder.controlpanel.ui/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.flightrecorder.controlpanel.ui</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.flightrecorder.controlpanel.ui/src/main/java/org/openjdk/jmc/flightrecorder/controlpanel/ui/ControlPanel.java b/application/org.openjdk.jmc.flightrecorder.controlpanel.ui/src/main/java/org/openjdk/jmc/flightrecorder/controlpanel/ui/ControlPanel.java
--- a/application/org.openjdk.jmc.flightrecorder.controlpanel.ui/src/main/java/org/openjdk/jmc/flightrecorder/controlpanel/ui/ControlPanel.java
+++ b/application/org.openjdk.jmc.flightrecorder.controlpanel.ui/src/main/java/org/openjdk/jmc/flightrecorder/controlpanel/ui/ControlPanel.java
@@ -121,13 +121,12 @@
 		suffixPart = suffixPart.length() > 0 ? "_" + suffixPart : suffixPart; //$NON-NLS-1$
 		suffixPart = suffixPart.length() > MAX_FILENAME_SUFFIX_LENGTH
 				? suffixPart.substring(0, MAX_FILENAME_SUFFIX_LENGTH) : suffixPart;
 
 		String lastPathStr = getDefault().getPreferenceStore().getString(LAST_PATH);
-		IPath lastFolder = lastPathStr.isEmpty() ?
-				IDESupportToolkit.getDefaultRecordingFolder() :
-				Path.fromOSString(lastPathStr).removeLastSegments(1);
+		IPath lastFolder = lastPathStr.isEmpty() ? IDESupportToolkit.getDefaultRecordingFolder()
+				: Path.fromOSString(lastPathStr).removeLastSegments(1);
 
 		MCFile f = getDefaultRecordingFile(lastFolder, suffixPart);
 		int i = 1;
 		while (IDESupportToolkit.validateFileResourcePath(f.getPath()) == IIDESupport.FILE_EXISTS_STATUS
 				&& i < 100000) {
diff a/application/org.openjdk.jmc.flightrecorder.controlpanel.ui/src/main/java/org/openjdk/jmc/flightrecorder/controlpanel/ui/model/EventConfiguration.java b/application/org.openjdk.jmc.flightrecorder.controlpanel.ui/src/main/java/org/openjdk/jmc/flightrecorder/controlpanel/ui/model/EventConfiguration.java
--- a/application/org.openjdk.jmc.flightrecorder.controlpanel.ui/src/main/java/org/openjdk/jmc/flightrecorder/controlpanel/ui/model/EventConfiguration.java
+++ b/application/org.openjdk.jmc.flightrecorder.controlpanel.ui/src/main/java/org/openjdk/jmc/flightrecorder/controlpanel/ui/model/EventConfiguration.java
@@ -541,12 +541,12 @@
 		/*
 		 * All our settings were in the other holder. Must now check size to ensure the opposite.
 		 * We're doing this last as it might be expensive. Otherwise, we could just have called
 		 * equals() on the maps.
 		 */
-		return ourOptions.keySet().size() == other.getEventOptions(ourOptions.emptyWithSameConstraints())
-				.keySet().size();
+		return ourOptions.keySet().size() == other.getEventOptions(ourOptions.emptyWithSameConstraints()).keySet()
+				.size();
 	}
 
 	public Set<IEventTypeID> getConfigEventTypes() {
 		Set<IEventTypeID> eventTypes = new HashSet<>();
 		collectConfigEventTypes(getRoot(), eventTypes);
diff a/application/org.openjdk.jmc.flightrecorder.ext.g1/pom.xml b/application/org.openjdk.jmc.flightrecorder.ext.g1/pom.xml
--- a/application/org.openjdk.jmc.flightrecorder.ext.g1/pom.xml
+++ b/application/org.openjdk.jmc.flightrecorder.ext.g1/pom.xml
@@ -39,6 +39,10 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.flightrecorder.ext.g1</artifactId>
 	<version>1.0.0-SNAPSHOT</version>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.flightrecorder.ext.jfx/pom.xml b/application/org.openjdk.jmc.flightrecorder.ext.jfx/pom.xml
--- a/application/org.openjdk.jmc.flightrecorder.ext.jfx/pom.xml
+++ b/application/org.openjdk.jmc.flightrecorder.ext.jfx/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.flightrecorder.ext.jfx</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.flightrecorder.ext.jfx/src/main/java/org/openjdk/jmc/flightrecorder/ext/jfx/JfxConstants.java b/application/org.openjdk.jmc.flightrecorder.ext.jfx/src/main/java/org/openjdk/jmc/flightrecorder/ext/jfx/JfxConstants.java
--- a/application/org.openjdk.jmc.flightrecorder.ext.jfx/src/main/java/org/openjdk/jmc/flightrecorder/ext/jfx/JfxConstants.java
+++ b/application/org.openjdk.jmc.flightrecorder.ext.jfx/src/main/java/org/openjdk/jmc/flightrecorder/ext/jfx/JfxConstants.java
@@ -49,26 +49,30 @@
 	static final String TYPE_ID_PULSE_PHASE_12 = "javafx.PulsePhase"; //$NON-NLS-1$
 	static final String TYPE_ID_INPUT_12 = "javafx.Input"; //$NON-NLS-1$
 
 	static final String JFX_RULE_PATH = "javaFx"; //$NON-NLS-1$
 
-	static final IItemFilter JFX_PULSE_FILTER = ItemFilters.or(ItemFilters.type(TYPE_ID_PULSE_PHASE_8), ItemFilters.type(TYPE_ID_PULSE_PHASE_12));
-	static final IItemFilter JFX_INPUT_FILTER = ItemFilters.or(ItemFilters.type(TYPE_ID_INPUT_8), ItemFilters.type(TYPE_ID_INPUT_12));
+	static final IItemFilter JFX_PULSE_FILTER = ItemFilters.or(ItemFilters.type(TYPE_ID_PULSE_PHASE_8),
+			ItemFilters.type(TYPE_ID_PULSE_PHASE_12));
+	static final IItemFilter JFX_INPUT_FILTER = ItemFilters.or(ItemFilters.type(TYPE_ID_INPUT_8),
+			ItemFilters.type(TYPE_ID_INPUT_12));
 
 	static final IItemFilter JFX_FILTER = ItemFilters.or(JFX_INPUT_FILTER, JFX_PULSE_FILTER);
 
-	static final IAttribute<IQuantity> ATTRIBUTE_PULSE_ID_8 = Attribute.attr("pulseNumber", Messages.JfxConstants_PULSE_ID, //$NON-NLS-1$
-			UnitLookup.NUMBER);
+	static final IAttribute<IQuantity> ATTRIBUTE_PULSE_ID_8 = Attribute.attr("pulseNumber", //$NON-NLS-1$
+			Messages.JfxConstants_PULSE_ID, UnitLookup.NUMBER);
 	static final IAttribute<IQuantity> ATTRIBUTE_PULSE_ID_12 = Attribute.attr("pulseId", Messages.JfxConstants_PULSE_ID, //$NON-NLS-1$
 			UnitLookup.NUMBER);
 	static final IAttribute<String> ATTRIBUTE_PHASE_NAME_8 = Attribute.attr("phase", Messages.JfxConstants_PHASE_NAME, //$NON-NLS-1$
 			UnitLookup.PLAIN_TEXT);
-	static final IAttribute<String> ATTRIBUTE_PHASE_NAME_12 = Attribute.attr("phaseName", Messages.JfxConstants_PHASE_NAME, //$NON-NLS-1$
-			UnitLookup.PLAIN_TEXT);
+	static final IAttribute<String> ATTRIBUTE_PHASE_NAME_12 = Attribute.attr("phaseName", //$NON-NLS-1$
+			Messages.JfxConstants_PHASE_NAME, UnitLookup.PLAIN_TEXT);
 	static final IAttribute<String> INPUT_TYPE = Attribute.attr("input", Messages.JfxConstants_INPUT_TYPE, //$NON-NLS-1$
 			UnitLookup.PLAIN_TEXT);
 
-	static final IAggregator<IQuantity, ?> MAX_PULSE_DURATION = Aggregators.max(TYPE_ID_PULSE_PHASE_12, JfrAttributes.DURATION);
+	static final IAggregator<IQuantity, ?> MAX_PULSE_DURATION = Aggregators.max(TYPE_ID_PULSE_PHASE_12,
+			JfrAttributes.DURATION);
 	static final IAggregator<IQuantity, ?> PULSE_START = Aggregators.min(Messages.JfxConstants_PULSE_START,
-			Messages.JfxConstants_PULSE_START_DESCRIPTION, JfxConstants.TYPE_ID_PULSE_PHASE_12, JfrAttributes.START_TIME);
+			Messages.JfxConstants_PULSE_START_DESCRIPTION, JfxConstants.TYPE_ID_PULSE_PHASE_12,
+			JfrAttributes.START_TIME);
 
 }
diff a/application/org.openjdk.jmc.flightrecorder.ext.jfx/src/main/java/org/openjdk/jmc/flightrecorder/ext/jfx/JfxPage.java b/application/org.openjdk.jmc.flightrecorder.ext.jfx/src/main/java/org/openjdk/jmc/flightrecorder/ext/jfx/JfxPage.java
--- a/application/org.openjdk.jmc.flightrecorder.ext.jfx/src/main/java/org/openjdk/jmc/flightrecorder/ext/jfx/JfxPage.java
+++ b/application/org.openjdk.jmc.flightrecorder.ext.jfx/src/main/java/org/openjdk/jmc/flightrecorder/ext/jfx/JfxPage.java
@@ -165,20 +165,21 @@
 			this.pageContainer = editor;
 			this.items = items;
 			Form form = DataPageToolkit.createForm(parent, toolkit, name, icon);
 
 			JavaFxEventAvailability availability = JfxVersionUtil.getAvailability(getItems());
-			
+
 			mainSash = new SashForm(form.getBody(), SWT.VERTICAL | SWT.SMOOTH);
 			toolkit.adapt(mainSash);
 			tableSash = new SashForm(mainSash, SWT.HORIZONTAL | SWT.SMOOTH);
 			toolkit.adapt(tableSash);
 
 			Section phases = CompositeToolkit.createSection(tableSash, toolkit, Messages.JfxPage_PHASES);
 			phasesSash = new SashForm(phases, SWT.HORIZONTAL | SWT.SMOOTH);
 			phases.setClient(phasesSash);
-			pulsesTable = BY_PULSE_HISTOGRAM.buildWithoutBorder(phasesSash, JfxVersionUtil.getPulseIdAttribute(availability),
+			pulsesTable = BY_PULSE_HISTOGRAM.buildWithoutBorder(phasesSash,
+					JfxVersionUtil.getPulseIdAttribute(availability),
 					getPulseTableSettings(state.getChild(PULSES_TABLE)));
 			pulsesFilter = FilterComponent.createFilterComponent(pulsesTable, pulsesTableFilter,
 					getItems().apply(JfxConstants.JFX_PULSE_FILTER), pageContainer.getSelectionStore()::getSelections,
 					this::onPulsesFilterChange);
 			pulsesTable.getManager().getViewer().addSelectionChangedListener(e -> onPulsesSelected());
@@ -189,11 +190,11 @@
 			phaseList.addColumn(JfrAttributes.DURATION);
 			phaseList.addColumn(JfrAttributes.START_TIME);
 			phaseList.addColumn(JfxVersionUtil.getPhaseNameAttribute(availability));
 			phaseList.addColumn(JfrAttributes.EVENT_THREAD);
 			phaseList.addColumn(JfxVersionUtil.getPulseIdAttribute(availability));
-			
+
 			phasesTable = phaseList.buildWithoutBorder(phasesSash, getPhaseListSettings(state.getChild(PHASES_TABLE)));
 			phasesFilter = FilterComponent.createFilterComponent(phasesTable, phasesTableFilter,
 					getItems().apply(JfxConstants.JFX_PULSE_FILTER), pageContainer.getSelectionStore()::getSelections,
 					this::onPhasesFilterChange);
 			phasesTable.getManager().getViewer()
@@ -374,11 +375,12 @@
 
 	private static IXDataRenderer buildThreadRenderer(Object threadName, IItemCollection items) {
 		// Attribute only used for looking up color and name information here
 		IXDataRenderer phaseRenderer = DataPageToolkit.buildSpanRenderer(items,
 				DataPageToolkit.getAttributeValueColor(JfxConstants.ATTRIBUTE_PHASE_NAME_12));
-		return new ItemRow(String.valueOf(threadName), JfxConstants.ATTRIBUTE_PHASE_NAME_12.getDescription(), phaseRenderer, items);
+		return new ItemRow(String.valueOf(threadName), JfxConstants.ATTRIBUTE_PHASE_NAME_12.getDescription(),
+				phaseRenderer, items);
 	}
 
 	private static TableSettings getPulseTableSettings(IState state) {
 		if (state == null) {
 			return new TableSettings(TOTAL_DURATION,
diff a/application/org.openjdk.jmc.flightrecorder.ext.jfx/src/main/java/org/openjdk/jmc/flightrecorder/ext/jfx/JfxPulseDurationRule.java b/application/org.openjdk.jmc.flightrecorder.ext.jfx/src/main/java/org/openjdk/jmc/flightrecorder/ext/jfx/JfxPulseDurationRule.java
--- a/application/org.openjdk.jmc.flightrecorder.ext.jfx/src/main/java/org/openjdk/jmc/flightrecorder/ext/jfx/JfxPulseDurationRule.java
+++ b/application/org.openjdk.jmc.flightrecorder.ext.jfx/src/main/java/org/openjdk/jmc/flightrecorder/ext/jfx/JfxPulseDurationRule.java
@@ -98,11 +98,11 @@
 			mappedScore = mappedScore < 1 ? 1 : mappedScore;
 			return new Result(this, mappedScore,
 					MessageFormat.format(Messages.JfxPulseDurationRule_WARNING,
 							UnitLookup.PERCENT_UNITY.quantity(ratioOfLongPhases).displayUsing(IDisplayable.AUTO),
 							targetPhaseTime.displayUsing(IDisplayable.AUTO)),
-					MessageFormat.format(Messages.JfxPulseDurationRule_WARNING_LONG, 
+					MessageFormat.format(Messages.JfxPulseDurationRule_WARNING_LONG,
 							targetFramerate.displayUsing(IDisplayable.AUTO)));
 		}
 		return new Result(this, 0, Messages.JfxPulseDurationRule_OK);
 	}
 
diff a/application/org.openjdk.jmc.flightrecorder.ext.jfx/src/main/java/org/openjdk/jmc/flightrecorder/ext/jfx/JfxVersionUtil.java b/application/org.openjdk.jmc.flightrecorder.ext.jfx/src/main/java/org/openjdk/jmc/flightrecorder/ext/jfx/JfxVersionUtil.java
--- a/application/org.openjdk.jmc.flightrecorder.ext.jfx/src/main/java/org/openjdk/jmc/flightrecorder/ext/jfx/JfxVersionUtil.java
+++ b/application/org.openjdk.jmc.flightrecorder.ext.jfx/src/main/java/org/openjdk/jmc/flightrecorder/ext/jfx/JfxVersionUtil.java
@@ -43,40 +43,38 @@
  */
 final class JfxVersionUtil {
 	enum JavaFxEventAvailability {
 		None, JavaFx8, JavaFx12
 	}
-	
+
 	static JavaFxEventAvailability getAvailability(IItemCollection items) {
-		EventAvailability eventAvailability = RulesToolkit.getEventAvailability(items, JfxConstants.TYPE_ID_PULSE_PHASE_12);
+		EventAvailability eventAvailability = RulesToolkit.getEventAvailability(items,
+				JfxConstants.TYPE_ID_PULSE_PHASE_12);
 		if (RulesToolkit.isEventsEnabled(eventAvailability)) {
 			return JavaFxEventAvailability.JavaFx12;
-		}		
+		}
 		eventAvailability = RulesToolkit.getEventAvailability(items, JfxConstants.TYPE_ID_PULSE_PHASE_8);
 		if (RulesToolkit.isEventsEnabled(eventAvailability)) {
 			return JavaFxEventAvailability.JavaFx8;
 		}
 		return JavaFxEventAvailability.None;
 	}
-	
 
 	static String getPulseTypeId(JavaFxEventAvailability availability) {
 		if (availability == JavaFxEventAvailability.JavaFx8) {
 			return JfxConstants.TYPE_ID_PULSE_PHASE_8;
 		}
 		return JfxConstants.TYPE_ID_PULSE_PHASE_12;
 	}
 
-
 	static IAttribute<IQuantity> getPulseIdAttribute(JavaFxEventAvailability availability) {
 		if (availability == JavaFxEventAvailability.JavaFx8) {
 			return JfxConstants.ATTRIBUTE_PULSE_ID_8;
 		}
 		return JfxConstants.ATTRIBUTE_PULSE_ID_12;
 	}
 
-
 	static IAttribute<String> getPhaseNameAttribute(JavaFxEventAvailability availability) {
 		if (availability == JavaFxEventAvailability.JavaFx8) {
 			return JfxConstants.ATTRIBUTE_PHASE_NAME_8;
 		}
 		return JfxConstants.ATTRIBUTE_PHASE_NAME_12;
diff a/application/org.openjdk.jmc.flightrecorder.flameview/pom.xml b/application/org.openjdk.jmc.flightrecorder.flameview/pom.xml
--- a/application/org.openjdk.jmc.flightrecorder.flameview/pom.xml
+++ b/application/org.openjdk.jmc.flightrecorder.flameview/pom.xml
@@ -44,10 +44,11 @@
 
 	<properties>
 		<download.maven.plugin.version>1.4.2</download.maven.plugin.version>
 		<download-maven-plugin.phase>process-resources</download-maven-plugin.phase>
 		<download-maven-plugin.output>${project.basedir}/src/main/resources/jslibs</download-maven-plugin.output>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
 	</properties>
 
 	<build>
 		<plugins>
 			<plugin>
diff a/application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/FlameGraphView.java b/application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/FlameGraphView.java
--- a/application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/FlameGraphView.java
+++ b/application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/FlameGraphView.java
@@ -94,13 +94,11 @@
 
 		String jsIeLibraries = loadLibraries(jsHtml5shiv, jsRespond);
 		String jsD3Libraries = loadLibraries(jsD3V4, jsD3Tip, jsD3FlameGraph);
 
 		// formatter arguments for the template: %1 - CSSs, %2 - IE9 specific scripts, %3 - 3rd party scripts
-		HTML_PAGE = String.format(fileContent("page.template"), 
-				fileContent(cssD3Flamegraph),
-				jsIeLibraries,
+		HTML_PAGE = String.format(fileContent("page.template"), fileContent(cssD3Flamegraph), jsIeLibraries,
 				jsD3Libraries);
 	}
 
 	private static final ExecutorService MODEL_EXECUTOR = Executors.newFixedThreadPool(1);
 	private FrameSeparator frameSeparator;
@@ -260,24 +258,23 @@
 
 	private static String toJSonKeyValue(String key, String value) {
 		return "\"" + key + "\": " + "\"" + value + "\"";
 	}
 
-	private static String loadLibraries(String... libs) {
-		if(libs == null || libs.length == 0) {
+	private static String loadLibraries(String ... libs) {
+		if (libs == null || libs.length == 0) {
 			return "";
 		} else {
 			return Stream.of(libs).map(FlameGraphView::fileContent).collect(Collectors.joining("\n"));
 		}
 	}
 
-	private static String fileContent(String fileName){
+	private static String fileContent(String fileName) {
 		try {
 			return StringToolkit.readString(FlameGraphView.class.getClassLoader().getResourceAsStream(fileName));
 		} catch (IOException e) {
-			FlightRecorderUI.getDefault().getLogger()
-				.log(Level.WARNING, MessageFormat
-						.format("Could not load script \"{0}\",\"{1}\"", fileName, e.getMessage()));  	//$NON-NLS-1$
+			FlightRecorderUI.getDefault().getLogger().log(Level.WARNING,
+					MessageFormat.format("Could not load script \"{0}\",\"{1}\"", fileName, e.getMessage())); //$NON-NLS-1$
 			return "";
 		}
 	}
 }
diff a/application/org.openjdk.jmc.flightrecorder.metadata/pom.xml b/application/org.openjdk.jmc.flightrecorder.metadata/pom.xml
--- a/application/org.openjdk.jmc.flightrecorder.metadata/pom.xml
+++ b/application/org.openjdk.jmc.flightrecorder.metadata/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.flightrecorder.metadata</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.flightrecorder.pde/pom.xml b/application/org.openjdk.jmc.flightrecorder.pde/pom.xml
--- a/application/org.openjdk.jmc.flightrecorder.pde/pom.xml
+++ b/application/org.openjdk.jmc.flightrecorder.pde/pom.xml
@@ -39,6 +39,10 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.flightrecorder.pde</artifactId>
 	<version>2.0.0-SNAPSHOT</version>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.flightrecorder.rules.extensionprovider/pom.xml b/application/org.openjdk.jmc.flightrecorder.rules.extensionprovider/pom.xml
--- a/application/org.openjdk.jmc.flightrecorder.rules.extensionprovider/pom.xml
+++ b/application/org.openjdk.jmc.flightrecorder.rules.extensionprovider/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.flightrecorder.rules.extensionprovider</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.flightrecorder.ui/pom.xml b/application/org.openjdk.jmc.flightrecorder.ui/pom.xml
--- a/application/org.openjdk.jmc.flightrecorder.ui/pom.xml
+++ b/application/org.openjdk.jmc.flightrecorder.ui/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.flightrecorder.ui</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/DataPageDescriptor.java b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/DataPageDescriptor.java
--- a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/DataPageDescriptor.java
+++ b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/DataPageDescriptor.java
@@ -154,11 +154,11 @@
 
 	@Override
 	public ImageDescriptor getImageDescriptor() {
 		return factory.getImageDescriptor(pageState);
 	}
-	
+
 	@Override
 	public String toString() {
 		return getId() + " children:" + String.valueOf(children); //$NON-NLS-1$
 	}
 }
diff a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/JfrEditor.java b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/JfrEditor.java
--- a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/JfrEditor.java
+++ b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/JfrEditor.java
@@ -263,12 +263,12 @@
 
 		Label errorTextLabel = new Label(composite, SWT.WRAP);
 		errorTextLabel.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create());
 		errorTextLabel.setText(Messages.JFR_EDITOR_INVALID_RECORDING_TEXT);
 
-		ExpandableComposite ec = toolkit
-				.createExpandableComposite(composite, ExpandableComposite.TREE_NODE | ExpandableComposite.CLIENT_INDENT);
+		ExpandableComposite ec = toolkit.createExpandableComposite(composite,
+				ExpandableComposite.TREE_NODE | ExpandableComposite.CLIENT_INDENT);
 		ec.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
 		ec.setText(Messages.STACKTRACE_VIEW_STACK_TRACE);
 
 		Text stackTraceText = new Text(ec, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL | SWT.READ_ONLY);
 		stackTraceText.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));
diff a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/JfrPropertySheet.java b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/JfrPropertySheet.java
--- a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/JfrPropertySheet.java
+++ b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/JfrPropertySheet.java
@@ -123,10 +123,11 @@
 			.getMCImageDescriptor(ImageConstants.ICON_NEW_PAGE);
 	private static final String HELP_CONTEXT_ID = FlightRecorderUI.PLUGIN_ID + ".JfrPropertiesView"; //$NON-NLS-1$
 	private static final Object TOO_MANY_VALUES = new Object();
 	private static final PropertySheetRow CALCULATING = new PropertySheetRow(null, null);
 	private static Set<IType<?>> selectedTypes = Collections.emptySet();
+
 	private static class PropertySheetRowSelection extends FlavoredSelectionBase {
 
 		private final PropertySheetRow row;
 
 		PropertySheetRowSelection(PropertySheetRow row) {
@@ -320,12 +321,12 @@
 						return "[" + values[0].getName() + " ... " //$NON-NLS-1$ //$NON-NLS-2$
 								+ values[values.length - 1].getName() + "]"; //$NON-NLS-1$
 					} else if (value instanceof Object[]) {
 						return limitedDeepToString((Object[]) value, this::getValueString);
 					} else if (value instanceof Collection<?>) {
-						selectedTypes = new HashSet<IType<?>>((Collection<IType<?>>) value)
-							.stream().collect(Collectors.toSet());
+						selectedTypes = new HashSet<IType<?>>((Collection<IType<?>>) value).stream()
+								.collect(Collectors.toSet());
 						return limitedDeepToString(((Collection<?>) value).toArray(), this::getValueString);
 					}
 					return TypeHandling.getValueString(value);
 				}
 
@@ -342,14 +343,12 @@
 	@SuppressWarnings("unchecked")
 	private static void updateSelectedTypes(Object value) {
 		if (value instanceof IType<?>) {
 			selectedTypes = new HashSet<IType<?>>();
 			selectedTypes.add((IType<?>) value);
-		}
-		else if (value instanceof Collection<?>) {
-			selectedTypes = new HashSet<IType<?>>((Collection<IType<?>>) value)
-					.stream().collect(Collectors.toSet());
+		} else if (value instanceof Collection<?>) {
+			selectedTypes = new HashSet<IType<?>>((Collection<IType<?>>) value).stream().collect(Collectors.toSet());
 		}
 	}
 
 	private static String limitedDeepToString(Object[] array, Function<Object, String> valueToStringProvider) {
 		return limitedDeepToString(array, new StringBuilder(), true, valueToStringProvider);
diff a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/common/DataPageToolkit.java b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/common/DataPageToolkit.java
--- a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/common/DataPageToolkit.java
+++ b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/common/DataPageToolkit.java
@@ -572,22 +572,22 @@
 		renderer.addBarChart(a.getName(), allocationSeries, color);
 		return new ItemRow(title, description, renderer, items);
 	}
 
 	public static ItemRow buildSizeHistogram(
-		String title, String description, IItemCollection items, IAggregator<IQuantity, ?> a, Color color, IAttribute<IQuantity> attribute) {
-		IQuantitySeries<IQuantity[]> allocationSeries = BucketBuilder.aggregatorSeries(items, a,
-				JdkAttributes.IO_SIZE);
+		String title, String description, IItemCollection items, IAggregator<IQuantity, ?> a, Color color,
+		IAttribute<IQuantity> attribute) {
+		IQuantitySeries<IQuantity[]> allocationSeries = BucketBuilder.aggregatorSeries(items, a, JdkAttributes.IO_SIZE);
 		XYDataRenderer renderer = new XYDataRenderer(getKindOfQuantity(a).getDefaultUnit().quantity(0), title,
 				description);
 		renderer.addBarChart(a.getName(), allocationSeries, color);
 		return new ItemRow(title, description, renderer, items);
 	}
 
-	public static IRange<IQuantity> buildSizeRange(IItemCollection items, boolean isSocket){
+	public static IRange<IQuantity> buildSizeRange(IItemCollection items, boolean isSocket) {
 		IQuantity end = null;
-		if(isSocket) {
+		if (isSocket) {
 			end = QuantitiesToolkit.maxPresent(items.getAggregate(JdkAggregators.SOCKET_READ_LARGEST),
 					items.getAggregate(JdkAggregators.SOCKET_WRITE_LARGEST));
 		} else {
 			end = QuantitiesToolkit.maxPresent(items.getAggregate(JdkAggregators.FILE_READ_LARGEST),
 					items.getAggregate(JdkAggregators.FILE_WRITE_LARGEST));
@@ -859,19 +859,19 @@
 				if (!attributes.isEmpty()) {
 					if (manager.find(Messages.FILTER_NO_ATTRIBUTE_AVAILABLE) != null) {
 						manager.remove(Messages.FILTER_NO_ATTRIBUTE_AVAILABLE);
 					}
 					attributes.stream().distinct().sorted((a1, a2) -> a1.getName().compareTo(a2.getName()))
-						.forEach(attr -> {
-							addAttributeValuePredicate.add(new Action(attr.getName()) {
-								@Override
-								public void run() {
-									IItemFilter filter = createDefaultFilter(items, attr);
-									editor.addRoot(filter);
-								}
+							.forEach(attr -> {
+								addAttributeValuePredicate.add(new Action(attr.getName()) {
+									@Override
+									public void run() {
+										IItemFilter filter = createDefaultFilter(items, attr);
+										editor.addRoot(filter);
+									}
+								});
 							});
-						});
 				} else {
 					manager.add(disabledAction(Messages.FILTER_NO_ATTRIBUTE_AVAILABLE));
 				}
 
 			}
@@ -906,14 +906,12 @@
 				.map(a -> a.equals(JdkAttributes.REC_SETTING_FOR) ? JdkAttributes.REC_SETTING_FOR_NAME : a)
 				.map(a -> a.equals(JdkAttributes.CLASS_DEFINING_CLASSLOADER)
 						? JdkAttributes.CLASS_DEFINING_CLASSLOADER_STRING : a)
 				.map(a -> a.equals(JdkAttributes.CLASS_INITIATING_CLASSLOADER)
 						? JdkAttributes.CLASS_INITIATING_CLASSLOADER_STRING : a)
-				.map(a -> a.equals(JdkAttributes.PARENT_CLASSLOADER)
-						? JdkAttributes.PARENT_CLASSLOADER_STRING : a)
-				.map(a -> a.equals(JdkAttributes.CLASSLOADER)
-						? JdkAttributes.CLASSLOADER_STRING : a)
+				.map(a -> a.equals(JdkAttributes.PARENT_CLASSLOADER) ? JdkAttributes.PARENT_CLASSLOADER_STRING : a)
+				.map(a -> a.equals(JdkAttributes.CLASSLOADER) ? JdkAttributes.CLASSLOADER_STRING : a)
 				.filter(a -> a.equals(JfrAttributes.EVENT_TYPE) || (a.getContentType() instanceof RangeContentType)
 						|| (a.getContentType().getPersister() != null))
 				.distinct();
 	}
 
diff a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/common/DurationHdrHistogram.java b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/common/DurationHdrHistogram.java
--- a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/common/DurationHdrHistogram.java
+++ b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/common/DurationHdrHistogram.java
@@ -89,25 +89,29 @@
 
 	}
 
 	/**
 	 * Computes the duration at a given percentile for values stored in the histogram.
-	 * @param percentile - the percentile, as a {@link UnitLookup#NUMBER}
+	 * 
+	 * @param percentile
+	 *            the percentile, as a {@link UnitLookup#NUMBER}
 	 * @return the computed duration, as a {@link UnitLookup#TIMESPAN}
 	 */
 	public IQuantity getDurationAtPercentile(IQuantity percentile) {
 		long rawValue = histogram.getValueAtPercentile(percentile.doubleValue());
 		IQuantity duration = UnitLookup.NANOSECOND.quantity(rawValue);
 		return duration;
 	}
 
 	/**
-	 * Computes the duration at a given percentile for values stored
-	 * in the histogram, and number of values at or above that duration.
-	 * @param percentile - the percentile, as a {@link UnitLookup#NUMBER}
-	 * @return a pair with the computed duration as a {@link UnitLookup#TIMESPAN},
-	 * 	       and item count as a {@link UnitLookup#NUMBER}, in that order
+	 * Computes the duration at a given percentile for values stored in the histogram, and number of
+	 * values at or above that duration.
+	 * 
+	 * @param percentile
+	 *            the percentile, as a {@link UnitLookup#NUMBER}
+	 * @return a pair with the computed duration as a {@link UnitLookup#TIMESPAN}, and item count as
+	 *         a {@link UnitLookup#NUMBER}, in that order
 	 */
 	public Pair<IQuantity, IQuantity> getDurationAndCountAtPercentile(IQuantity percentile) {
 		long rawValue = histogram.getValueAtPercentile(percentile.doubleValue());
 		IQuantity duration = UnitLookup.NANOSECOND.quantity(rawValue);
 		long rawCount = histogram.getCountBetweenValues(rawValue, histogram.getMaxValue());
@@ -128,15 +132,17 @@
 	public long getTotalCount() {
 		return histogram.getTotalCount();
 	}
 
 	/**
-	 * Gets the lowest value considered equivalent by this histogram,
-	 * subject to its configured precision. This is effectively a lower
-	 * bound for the "bucket" the specified value would fall under.
+	 * Gets the lowest value considered equivalent by this histogram, subject to its configured
+	 * precision. This is effectively a lower bound for the "bucket" the specified value would fall
+	 * under.
+	 * 
 	 * @see Histogram#lowestEquivalentValue(long)
-	 * @param duration - the specified duration quantity
+	 * @param duration
+	 *            the specified duration quantity
 	 * @return the lowest duration equivalent to the supplied argument
 	 */
 	public IQuantity getLowestEquivalentDuration(IQuantity duration) {
 		long rawValue = duration.clampedLongValueIn(UnitLookup.NANOSECOND);
 		long lowestEquivalent = histogram.lowestEquivalentValue(rawValue);
@@ -147,7 +153,6 @@
 	 * Resets this histogram to its initial state, deleting all values from it.
 	 */
 	public void reset() {
 		histogram.reset();
 	}
-
 }
diff a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/common/DurationPercentileTable.java b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/common/DurationPercentileTable.java
--- a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/common/DurationPercentileTable.java
+++ b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/common/DurationPercentileTable.java
@@ -72,30 +72,32 @@
 import org.openjdk.jmc.ui.misc.BackgroundFractionDrawer;
 import org.openjdk.jmc.ui.misc.DelegatingLabelProvider;
 import org.openjdk.jmc.ui.misc.OptimisticComparator;
 
 /**
- * A table containing Flight Recorder event durations at various pre-defined percentiles.
- * Each row in the table contains values for a different percentile, and the columns contain
- * series of durations and event counts.
+ * A table containing Flight Recorder event durations at various pre-defined percentiles. Each row
+ * in the table contains values for a different percentile, and the columns contain series of
+ * durations and event counts.
  *
  * @see DurationPercentileTableBuilder
  */
 public class DurationPercentileTable {
 
 	public static final String TABLE_NAME = "DurationPercentileTable"; //$NON-NLS-1$
 	private static final String COL_ID_PERCENTILE = TABLE_NAME + ".percentile"; //$NON-NLS-1$
 
+	// @formatter:off
 	private static final IQuantity[] PERCENTILES = {
 			UnitLookup.NUMBER_UNITY.quantity(0.0),
-			UnitLookup.NUMBER_UNITY.quantity(90.0),
+			UnitLookup.NUMBER_UNITY.quantity(90.0), 
 			UnitLookup.NUMBER_UNITY.quantity(99.0),
-			UnitLookup.NUMBER_UNITY.quantity(99.9),
+			UnitLookup.NUMBER_UNITY.quantity(99.9), 
 			UnitLookup.NUMBER_UNITY.quantity(99.99),
-			UnitLookup.NUMBER_UNITY.quantity(99.999),
-			UnitLookup.NUMBER_UNITY.quantity(100.0),
+			UnitLookup.NUMBER_UNITY.quantity(99.999), 
+			UnitLookup.NUMBER_UNITY.quantity(100.0)
 	};
+	// @formatter:on
 
 	private final DurationPercentileAggregator[] aggregators; // Correspond to column order
 	private final ColumnManager manager;
 
 	private DurationPercentileTable(ColumnManager manager, DurationPercentileAggregator[] aggregators) {
@@ -116,41 +118,51 @@
 			this.aggregators = new ArrayList<>();
 		}
 
 		/**
 		 * Adds a data series to this table, corresponding to an event type with a duration
-		 * associated with it. Calling this method adds two columns to the resulting table.
-		 * The first column contains duration values for the event at different percentiles,
-		 * and the second column contains the number of events with duration <= the duration
-		 * at that percentile.
+		 * associated with it. Calling this method adds two columns to the resulting table. The
+		 * first column contains duration values for the event at different percentiles, and the
+		 * second column contains the number of events with duration <= the duration at that
+		 * percentile.
 		 *
-		 * @param durationColId - the ID to be used for the duration column of this series
-		 * @param durationColName - the user-visible name to appear for the duration column header
-		 * @param countColId - the ID to be used for the event count column of this series
-		 * @param countColName - the user-visible name to appear for the event count column header
-		 * @param typeId - the event type ID used to match events belonging to this series
+		 * @param durationColId
+		 *            the ID to be used for the duration column of this series
+		 * @param durationColName
+		 *            the user-visible name to appear for the duration column header
+		 * @param countColId
+		 *            the ID to be used for the event count column of this series
+		 * @param countColName
+		 *            the user-visible name to appear for the event count column header
+		 * @param typeId
+		 *            the event type ID used to match events belonging to this series
 		 */
-		public void addSeries(String durationColId, String durationColName,
-				String countColId, String countColName, String typeId) {
-			IColumn column = new ColumnBuilder(durationColName, durationColId, new ValueAccessor(durationColId)).style(SWT.RIGHT).build();
+		public void addSeries(
+			String durationColId, String durationColName, String countColId, String countColName, String typeId) {
+			IColumn column = new ColumnBuilder(durationColName, durationColId, new ValueAccessor(durationColId))
+					.style(SWT.RIGHT).build();
 			columns.add(column);
 
 			Function<DurationPercentileTableRow, IQuantity> fractionFunc = row -> row.getCountFraction(countColId);
 			column = new ColumnBuilder(countColName, countColId, new ValueAccessor(countColId)).style(SWT.RIGHT)
 					.columnDrawer(BackgroundFractionDrawer.unchecked(fractionFunc)).build();
 			columns.add(column);
 
-			DurationPercentileAggregator aggregator = new DurationPercentileAggregator(typeId, durationColId, countColId);
+			DurationPercentileAggregator aggregator = new DurationPercentileAggregator(typeId, durationColId,
+					countColId);
 			aggregators.add(aggregator);
 		}
 
 		/**
-		 * Builds the {@link DurationPercentileTable} after all series have been added.
-		 * Calling this method results in the creation of the underlying {@link TableViewer}.
-		 * Further changes to this builder will not affect the returned table.
-		 * @param parent - the parent SWT composite that will contain this table
-		 * @param ts - settings to adjust various attributes of the created table
+		 * Builds the {@link DurationPercentileTable} after all series have been added. Calling this
+		 * method results in the creation of the underlying {@link TableViewer}. Further changes to
+		 * this builder will not affect the returned table.
+		 * 
+		 * @param parent
+		 *            the parent SWT composite that will contain this table
+		 * @param ts
+		 *            settings to adjust various attributes of the created table
 		 * @return a fully constructed {@link DurationPercentileTable} with no data
 		 */
 		public DurationPercentileTable build(Composite parent, TableSettings ts) {
 			TableViewer tableViewer = new TableViewer(parent,
 					SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION);
@@ -168,21 +180,23 @@
 			columns.add(new ColumnBuilder(Messages.DurationPercentileTable_PERCENTILE_COL_NAME, COL_ID_PERCENTILE,
 					new DelegatingLabelProvider(keyLP, cellAccessor)).comparator(comp).build());
 			columns.addAll(this.columns);
 
 			ColumnManager manager = ColumnManager.build(tableViewer, columns, ts);
-			DurationPercentileAggregator[] aggregatorsCopy = aggregators.toArray(new DurationPercentileAggregator[aggregators.size()]);
+			DurationPercentileAggregator[] aggregatorsCopy = aggregators
+					.toArray(new DurationPercentileAggregator[aggregators.size()]);
 			return new DurationPercentileTable(manager, aggregatorsCopy);
 		}
 	}
 
 	/**
-	 * Updates the data in this table with events from the item collection.
-	 * Calling this method stores the input data into a histogram, which is then
-	 * used to generate duration values at various percentiles.
+	 * Updates the data in this table with events from the item collection. Calling this method
+	 * stores the input data into a histogram, which is then used to generate duration values at
+	 * various percentiles.
 	 *
-	 * @param itemCol - a collection of events to use as input for this table
+	 * @param itemCol
+	 *            a collection of events to use as input for this table
 	 */
 	public void update(IItemCollection itemCol) {
 		// Add the value of each aggregate to our data model
 		DurationPercentileTableModel model = new DurationPercentileTableModel(itemCol);
 		Arrays.stream(aggregators).parallel().forEach(model::addAggregate);
@@ -206,19 +220,21 @@
 		});
 	}
 
 	/**
 	 * Get the {@link ColumnManager} responsible for the underlying {@link TableViewer}.
+	 * 
 	 * @return the manager
 	 */
 	public ColumnManager getManager() {
 		return manager;
 	}
 
 	/**
-	 * Gets a collection of items whose duration is at least as long as the percentile value
-	 * in the currently selected row.
+	 * Gets a collection of items whose duration is at least as long as the percentile value in the
+	 * currently selected row.
+	 * 
 	 * @return the collection of matching items
 	 */
 	public IItemCollection getSelectedItems() {
 		IStructuredSelection selection = manager.getViewer().getStructuredSelection();
 		Object firstSelection = selection.getFirstElement();
@@ -257,22 +273,27 @@
 	}
 
 	/**
 	 * Aggregator that inserts event durations into a histogram.
 	 */
-	private static class DurationPercentileAggregator extends AggregatorBase<Map<IQuantity, Map<String, IQuantity>>, DurationItemConsumer> {
+	private static class DurationPercentileAggregator
+			extends AggregatorBase<Map<IQuantity, Map<String, IQuantity>>, DurationItemConsumer> {
 
 		private final DurationHdrHistogram histogram;
 		private final String typeId;
 		private final String durationColId;
 		private final String countColId;
 
 		/**
 		 * Creates a new aggregator.
-		 * @param typeId - type ID used to match events
-		 * @param durationColId - the column ID for the duration column of this series
-		 * @param countColId - the column ID for the item count column of this series
+		 * 
+		 * @param typeId
+		 *            type ID used to match events
+		 * @param durationColId
+		 *            the column ID for the duration column of this series
+		 * @param countColId
+		 *            the column ID for the item count column of this series
 		 */
 		public DurationPercentileAggregator(String typeId, String durationColId, String countColId) {
 			super(null, null, UnitLookup.UNKNOWN);
 			this.histogram = new DurationHdrHistogram();
 			this.typeId = typeId;
@@ -339,13 +360,14 @@
 		public String getTypeId() {
 			return typeId;
 		}
 
 		/**
-		 * @param duration - a {@link UnitLookup#TIMESPAN} quantity
-		 * @return a lower bound on values considered equivalent by this
-		 * aggregator's underlying histogram
+		 * @param duration
+		 *            a {@link UnitLookup#TIMESPAN} quantity
+		 * @return a lower bound on values considered equivalent by this aggregator's underlying
+		 *         histogram
 		 */
 		public IQuantity getLowestEquivalentDuration(IQuantity duration) {
 			return histogram.getLowestEquivalentDuration(duration);
 		}
 
@@ -373,11 +395,13 @@
 			this.itemTotals = new ConcurrentHashMap<>();
 		}
 
 		/**
 		 * Computes the aggregate of this model's items and adds the results to this model.
-		 * @param aggregator - the aggregator to use
+		 * 
+		 * @param aggregator
+		 *            the aggregator to use
 		 */
 		public void addAggregate(DurationPercentileAggregator aggregator) {
 			aggregator.resetHistogram();
 
 			Map<IQuantity, Map<String, IQuantity>> newData = items.getAggregate(aggregator);
@@ -394,12 +418,13 @@
 				return oldVal;
 			}));
 		}
 
 		/**
-		 * Builds a list of table rows from the data in this model, suitable as input
-		 * to the {@link DurationPercentileTable}'s {@link ColumnViewer}.
+		 * Builds a list of table rows from the data in this model, suitable as input to the
+		 * {@link DurationPercentileTable}'s {@link ColumnViewer}.
+		 * 
 		 * @return the list of rows
 		 */
 		public List<DurationPercentileTableRow> buildRows() {
 			List<DurationPercentileTableRow> rows = new ArrayList<>();
 			for (IQuantity percentile : PERCENTILES) {
@@ -411,12 +436,12 @@
 		}
 
 	}
 
 	/**
-	 * Roughly equivalent to a row in the table, containing the percentile and list of
-	 * associated quantities in column order.
+	 * Roughly equivalent to a row in the table, containing the percentile and list of associated
+	 * quantities in column order.
 	 */
 	private static class DurationPercentileTableRow {
 
 		private final IQuantity percentile;
 		private final Map<String, IQuantity> valuesByColId;
@@ -442,13 +467,15 @@
 		public boolean hasValue(String columnId) {
 			return valuesByColId.containsKey(columnId);
 		}
 
 		/**
-		 * Calculates the fraction of items in this row, compared to the total
-		 * number of items in the series.
-		 * @param columnId - the ID of the item count column
+		 * Calculates the fraction of items in this row, compared to the total number of items in
+		 * the series.
+		 * 
+		 * @param columnId
+		 *            the ID of the item count column
 		 * @return a fraction quantity between 0 and 1
 		 */
 		public IQuantity getCountFraction(String columnId) {
 			IQuantity count = valuesByColId.get(columnId);
 			IQuantity total = totalsById.get(columnId);
@@ -458,13 +485,15 @@
 			}
 			return UnitLookup.NUMBER_UNITY.quantity(fraction);
 		}
 
 		/**
-		 * Computes the collection of items that have duration at least as long as the
-		 * corresponding values in this row.
-		 * @param aggregators - an array of aggregators that produced the content of this row
+		 * Computes the collection of items that have duration at least as long as the corresponding
+		 * values in this row.
+		 * 
+		 * @param aggregators
+		 *            an array of aggregators that produced the content of this row
 		 * @return the matching items
 		 */
 		public IItemCollection getItemsForRow(DurationPercentileAggregator[] aggregators) {
 			// Select all events with matching Type ID and duration greater or equal to the value
 			// for the selected percentile in the histogram, subject to the histogram's precision.
@@ -473,9 +502,7 @@
 							ItemFilters.moreOrEqual(JfrAttributes.DURATION,
 									a.getLowestEquivalentDuration(getValue(a.getDurationColId())))))
 					.reduce(ItemFilters::or).orElse(ItemFilters.none());
 			return items.apply(filter);
 		}
-
 	}
-
 }
diff a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/common/ThreadGraphLanes.java b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/common/ThreadGraphLanes.java
--- a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/common/ThreadGraphLanes.java
+++ b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/common/ThreadGraphLanes.java
@@ -148,12 +148,15 @@
 		laneFilters.stream().filter(ld -> ld.isEnabled()).forEach(lane -> {
 			IItemCollection laneItems = items.apply(lane.getFilter());
 			if (laneItems.iterator().hasNext()) {
 				ISpanSeries<IItem> laneSeries = QuantitySeries.max(laneItems, JfrAttributes.START_TIME,
 						JfrAttributes.END_TIME);
-				this.setTooltipTitle(MessageFormat.format(Messages.ThreadsPage_LANE_TOOLTIP_TITLE, threadName, lane.getName()));
-				lanes.add(new ItemRow(SpanRenderer.withBoundaries(laneSeries, DataPageToolkit.ITEM_COLOR, this.getTooltipTitle()), laneItems));
+				this.setTooltipTitle(
+						MessageFormat.format(Messages.ThreadsPage_LANE_TOOLTIP_TITLE, threadName, lane.getName()));
+				lanes.add(new ItemRow(
+						SpanRenderer.withBoundaries(laneSeries, DataPageToolkit.ITEM_COLOR, this.getTooltipTitle()),
+						laneItems));
 			}
 		});
 		IXDataRenderer renderer = !lanes.isEmpty() ? RendererToolkit.uniformRows(lanes)
 				: new ItemRow(RendererToolkit.empty(), ItemCollectionToolkit.EMPTY);
 		IItemCollection itemsAndThreadLifespan = addThreadLifeSpanEvents(thread, items);
@@ -233,23 +236,23 @@
 						|| dataSourceSupplier.get().getItems().apply(ld.getFilter()).iterator().hasNext()));
 		laneDefs = lanesByApplicability.get(true);
 		naLanes = lanesByApplicability.get(false);
 		return Collections.emptyList();
 	}
-	
+
 	//create two action identifiers to handle the chart context menu and the legend context menu
 	private List<String> chartActionIdentifiers = new ArrayList<>();
 	private List<String> legendActionIdentifiers = new ArrayList<>();
 
 	public void updateContextMenu(MCContextMenuManager mm, boolean isLegendMenu) {
-		
-		if(isLegendMenu) {
+
+		if (isLegendMenu) {
 			for (String id : legendActionIdentifiers) {
 				mm.remove(id);
 			}
 			legendActionIdentifiers.clear();
-		} else { 	
+		} else {
 			for (String id : chartActionIdentifiers) {
 				mm.remove(id);
 			}
 			chartActionIdentifiers.clear();
 		}
@@ -274,22 +277,22 @@
 					buildChart.run();
 				}
 			};
 			String identifier = ld.getName() + checkAction.hashCode();
 			checkAction.setId(identifier);
-			if(isLegendMenu) {
+			if (isLegendMenu) {
 				legendActionIdentifiers.add(identifier);
 			} else {
 				chartActionIdentifiers.add(identifier);
 			}
 			checkAction.setChecked(ld.isEnabled());
 			// FIXME: Add a tooltip here
 			mm.add(checkAction);
 			actions.add(checkAction);
 		});
 	}
-	
+
 	public List<IAction> getContextMenuActions() {
 		return actions;
 	}
 
 }
diff a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/overview/ResultReportUi.java b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/overview/ResultReportUi.java
--- a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/overview/ResultReportUi.java
+++ b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/overview/ResultReportUi.java
@@ -153,18 +153,19 @@
 
 	}
 
 	public class OpenWindowFunction extends BrowserFunction {
 
-		public OpenWindowFunction (final Browser browser, final String name) {
-		    super(browser, name);
+		public OpenWindowFunction(final Browser browser, final String name) {
+			super(browser, name);
 		}
-		public Object function (Object[] arguments) {
+
+		public Object function(Object[] arguments) {
 			final String url = String.valueOf(arguments[0]);
-		    final String title = String.valueOf(arguments[1]);
-		    openBrowserByUrl(url, title);
-		    return null;
+			final String title = String.valueOf(arguments[1]);
+			openBrowserByUrl(url, title);
+			return null;
 		}
 	}
 
 	private static class PageContainerResultProvider implements HtmlResultProvider {
 		private IPageContainer editor;
@@ -259,53 +260,53 @@
 	}
 
 	private void initializeBrowser(final Display display, final Browser browser, final Shell shell) {
 		browser.addOpenWindowListener(new OpenWindowListener() {
 			public void open(WindowEvent event) {
-				  initializeBrowser(display, browser, shell);
-				  event.browser = browser;
-			    }
+				initializeBrowser(display, browser, shell);
+				event.browser = browser;
+			}
 		});
 		browser.addCloseWindowListener(new CloseWindowListener() {
-			  public void close(WindowEvent event) {
-				  Browser browser = (Browser)event.widget;
-			      Shell shell = browser.getShell();
-			      shell.close();
-			  }
-	    });
+			public void close(WindowEvent event) {
+				Browser browser = (Browser) event.widget;
+				Shell shell = browser.getShell();
+				shell.close();
+			}
+		});
 	}
 
 	/*
-     * We replace the anchors in the HTML when running in the JMC UI to make
-     * it possible to follow them. See JMC-5419 for more information.
-     */
+	 * We replace the anchors in the HTML when running in the JMC UI to make it possible to follow
+	 * them. See JMC-5419 for more information.
+	 */
 	private static String adjustAnchorFollowAction(String html) {
 		Map<String, String> map = new HashMap<>();
 		Matcher m = HTML_ANCHOR_PATTERN.matcher(html);
 		while (m.find()) {
 			map.put(m.group(1), m.group(2));
 		}
-		for(Map.Entry<String, String> e: map.entrySet()){
+		for (Map.Entry<String, String> e : map.entrySet()) {
 			html = html.replace(e.getKey(), openWindowMethod(e.getKey(), e.getValue()));
 		}
 		return html;
 	}
 
-	private static String openWindowMethod(String url, String name){
-        return new StringBuilder().append("#\" onclick=\"").append(OPEN_BROWSER_WINDOW).append("(").append("\u0027") //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-                .append(url).append("\u0027").append(',').append("\u0027") //$NON-NLS-1$ //$NON-NLS-2$
-                .append(name).append("\u0027").append(");return false;").toString();  //$NON-NLS-1$//$NON-NLS-2$
-    }
+	private static String openWindowMethod(String url, String name) {
+		return new StringBuilder().append("#\" onclick=\"").append(OPEN_BROWSER_WINDOW).append("(").append("\u0027") //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				.append(url).append("\u0027").append(',').append("\u0027") //$NON-NLS-1$ //$NON-NLS-2$
+				.append(name).append("\u0027").append(");return false;").toString(); //$NON-NLS-1$//$NON-NLS-2$
+	}
 
 	public ResultReportUi(boolean isSinglePage) {
 		this.isSinglePage = isSinglePage;
 	}
 
 	public List<String> getHtml(IPageContainer editor) {
 		List<String> overviewHtml = new ArrayList<>(1);
-		String adjustedHtml = adjustAnchorFollowAction(RulesHtmlToolkit.generateStructuredHtml(new PageContainerResultProvider(editor), descriptors,
-				resultExpandedStates, true));
+		String adjustedHtml = adjustAnchorFollowAction(RulesHtmlToolkit.generateStructuredHtml(
+				new PageContainerResultProvider(editor), descriptors, resultExpandedStates, true));
 		overviewHtml.add(adjustedHtml);
 		return overviewHtml;
 	}
 
 	public void setShowOk(boolean showOk) {
diff a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/ClassLoadingPage.java b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/ClassLoadingPage.java
--- a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/ClassLoadingPage.java
+++ b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/ClassLoadingPage.java
@@ -30,11 +30,10 @@
  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
  * WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 package org.openjdk.jmc.flightrecorder.ui.pages;
 
-
 import java.util.ArrayList;
 import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
@@ -156,21 +155,21 @@
 		CLASS_LOADING_LIST.addColumn(JdkAttributes.CLASS_INITIATING_CLASSLOADER);
 		CLASS_LOADING_LIST.addColumn(JfrAttributes.START_TIME);
 		CLASS_LOADING_LIST.addColumn(JfrAttributes.DURATION);
 		CLASS_LOADING_LIST.addColumn(JfrAttributes.END_TIME);
 		CLASS_LOADING_LIST.addColumn(JfrAttributes.EVENT_THREAD);
-		
+
 		CLASS_UNLOADING_LIST.addColumn(JfrAttributes.EVENT_TIMESTAMP);
 		CLASS_UNLOADING_LIST.addColumn(JfrAttributes.EVENT_THREAD);
 		CLASS_UNLOADING_LIST.addColumn(JdkAttributes.CLASS_UNLOADED);
 		CLASS_UNLOADING_LIST.addColumn(JdkAttributes.CLASS_DEFINING_CLASSLOADER);
-		
+
 		CLASS_DEFINE_LIST.addColumn(JfrAttributes.START_TIME);
 		CLASS_DEFINE_LIST.addColumn(JdkAttributes.CLASS_DEFINING_CLASSLOADER);
 		CLASS_DEFINE_LIST.addColumn(JdkAttributes.CLASS_DEFINED);
 		CLASS_DEFINE_LIST.addColumn(JfrAttributes.EVENT_THREAD);
-		
+
 		CLASS_LOADER_STATISTICS_LIST.addColumn(JdkAttributes.ANONYMOUS_BLOCK_SIZE);
 		CLASS_LOADER_STATISTICS_LIST.addColumn(JdkAttributes.ANONYMOUS_CHUNK_SIZE);
 		CLASS_LOADER_STATISTICS_LIST.addColumn(JdkAttributes.ANONYMOUS_CLASS_COUNT);
 		CLASS_LOADER_STATISTICS_LIST.addColumn(JdkAttributes.BLOCK_SIZE);
 		CLASS_LOADER_STATISTICS_LIST.addColumn(JdkAttributes.CHUNK_SIZE);
@@ -270,27 +269,31 @@
 
 			classLoaderStatisticsTable = CLASS_LOADER_STATISTICS_LIST.buildWithoutBorder(classloaderFolder,
 					TableSettings.forState(state.getChild(CLASS_LOADER_STATISTICS_TABLE)));
 			classLoaderStatisticsTable.getManager().getViewer().addSelectionChangedListener(e -> {
 				// The standard aggregators will skip the null classloader, so we need to do this manually.
-				IItemCollection selection = ItemCollectionToolkit.build(classLoaderStatisticsTable.getSelection().get());
-				Stream<IMCClassLoader> stream = ItemCollectionToolkit.values(selection, JdkAttributes.CLASSLOADER).get().distinct();
+				IItemCollection selection = ItemCollectionToolkit
+						.build(classLoaderStatisticsTable.getSelection().get());
+				Stream<IMCClassLoader> stream = ItemCollectionToolkit.values(selection, JdkAttributes.CLASSLOADER).get()
+						.distinct();
 				Set<IMCClassLoader> selected = stream.collect(Collectors.toSet());
-				IItemFilter selectionFilter =  ItemFilters.and(ItemFilters.or(JdkFilters.CLASS_LOAD_OR_UNLOAD,
-				JdkFilters.CLASS_DEFINE), ItemFilters.memberOf(JdkAttributes.CLASS_DEFINING_CLASSLOADER, selected));
- 				IItemCollection filteredItems = getDataSource().getItems().apply(selectionFilter);
+				IItemFilter selectionFilter = ItemFilters.and(
+						ItemFilters.or(JdkFilters.CLASS_LOAD_OR_UNLOAD, JdkFilters.CLASS_DEFINE),
+						ItemFilters.memberOf(JdkAttributes.CLASS_DEFINING_CLASSLOADER, selected));
+				IItemCollection filteredItems = getDataSource().getItems().apply(selectionFilter);
 				pageContainer.showSelection(filteredItems);
 				updateTables(filteredItems);
 			});
 			classLoaderStatisticsFilter = FilterComponent.createFilterComponent(classLoaderStatisticsTable, null,
 					getDataSource().getItems().apply(JdkFilters.CLASS_LOADER_STATISTICS),
 					pageContainer.getSelectionStore()::getSelections, this::onClassLoaderStatisticsFilterChange);
 			MCContextMenuManager classLoaderStatisticsTableMm = MCContextMenuManager
 					.create(classLoaderStatisticsTable.getManager().getViewer().getControl());
 			ColumnMenusFactory.addDefaultMenus(classLoaderStatisticsTable.getManager(), classLoaderStatisticsTableMm);
-			SelectionStoreActionToolkit.addSelectionStoreActions(pageContainer.getSelectionStore(), classLoaderStatisticsTable,
-					Messages.ClassLoadingPage_CLASS_LOADER_STATISTICS_LIST_SELECTION, classLoaderStatisticsTableMm);
+			SelectionStoreActionToolkit.addSelectionStoreActions(pageContainer.getSelectionStore(),
+					classLoaderStatisticsTable, Messages.ClassLoadingPage_CLASS_LOADER_STATISTICS_LIST_SELECTION,
+					classLoaderStatisticsTableMm);
 			classLoaderStatisticsTableMm.add(classLoaderStatisticsFilter.getShowFilterAction());
 			classLoaderStatisticsTableMm.add(classLoaderStatisticsFilter.getShowSearchAction());
 			classLoaderStatisticsFilter.loadState(state.getChild(CLASS_LOADER_STATISTICS_FILTER));
 			DataPageToolkit.addTabItem(classloaderFolder, classLoaderStatisticsFilter.getComponent(),
 					Messages.ClassLoadingPage_CLASS_LOADER_STATISTICS_TAB_TITLE);
@@ -312,11 +315,11 @@
 			classLoadingTableMm.add(classLoadingFilter.getShowFilterAction());
 			classLoadingTableMm.add(classLoadingFilter.getShowSearchAction());
 			classLoadingFilter.loadState(state.getChild(CLASS_LOADING_FILTER));
 			DataPageToolkit.addTabItem(tabFolder, classLoadingFilter.getComponent(),
 					Messages.ClassLoadingPage_CLASS_LOADING_TAB_TITLE);
-			
+
 			classDefineTable = CLASS_DEFINE_LIST.buildWithoutBorder(tabFolder,
 					TableSettings.forState(state.getChild(CLASS_DEFINE_TABLE)));
 			classDefineTable.getManager().getViewer().addSelectionChangedListener(e -> pageContainer
 					.showSelection(ItemCollectionToolkit.build(classDefineTable.getSelection().get())));
 			classDefineFilter = FilterComponent.createFilterComponent(classDefineTable, null,
@@ -371,12 +374,12 @@
 			classDefineTable.getManager().setSelectionState(classDefineTableSelection);
 			classLoaderStatisticsTable.getManager().setSelectionState(classLoaderStatisticsTableSelection);
 		}
 
 		private void onHistogramFilterChange(IItemFilter filter) {
-			classloaderHistogramFilter.filterChangeHelper(filter, classloaderHistogram,
-					getDataSource().getItems().apply(ItemFilters.or(JdkFilters.CLASS_LOAD_OR_UNLOAD, JdkFilters.CLASS_DEFINE)));
+			classloaderHistogramFilter.filterChangeHelper(filter, classloaderHistogram, getDataSource().getItems()
+					.apply(ItemFilters.or(JdkFilters.CLASS_LOAD_OR_UNLOAD, JdkFilters.CLASS_DEFINE)));
 			if (classLoadingFilter != null) {
 				classLoadingFilter.notifyListener();
 			}
 			if (classUnloadingFilter != null) {
 				classUnloadingFilter.notifyListener();
@@ -399,31 +402,32 @@
 		private void onClassUnloadFilterChange(IItemFilter filter) {
 			classUnloadingFilter.filterChangeHelper(filter, classUnloadingTable,
 					getDataSource().getItems().apply(JdkFilters.CLASS_UNLOAD));
 			classUnloadTableFilter = filter;
 		}
-		
+
 		private void onClassDefineFilterChange(IItemFilter filter) {
 			classDefineFilter.filterChangeHelper(filter, classDefineTable,
 					getDataSource().getItems().apply(JdkFilters.CLASS_DEFINE));
 			classDefineTableFilter = filter;
 		}
-		
+
 		private void onClassLoaderStatisticsFilterChange(IItemFilter filter) {
 			classLoaderStatisticsFilter.filterChangeHelper(filter, classLoaderStatisticsTable,
 					getDataSource().getItems().apply(JdkFilters.CLASS_LOADER_STATISTICS));
 			classLoaderStatisticsTableFilter = filter;
 		}
-	
+
 		@Override
 		public void saveTo(IWritableState state) {
 			PersistableSashForm.saveState(sash, state.createChild(SASH));
 			classloaderHistogram.getManager().getSettings().saveState(state.createChild(HISTOGRAM));
 			classLoadingTable.getManager().getSettings().saveState(state.createChild(CLASS_LOADING_TABLE));
 			classUnloadingTable.getManager().getSettings().saveState(state.createChild(CLASS_UNLOADING_TABLE));
 			classDefineTable.getManager().getSettings().saveState(state.createChild(CLASS_DEFINE_TABLE));
-			classLoaderStatisticsTable.getManager().getSettings().saveState(state.createChild(CLASS_LOADER_STATISTICS_TABLE));
+			classLoaderStatisticsTable.getManager().getSettings()
+					.saveState(state.createChild(CLASS_LOADER_STATISTICS_TABLE));
 			classloaderHistogramFilter.saveState(state.createChild(HISTOGRAM_FILTER));
 			classLoadingFilter.saveState(state.createChild(CLASS_LOADING_FILTER));
 			classUnloadingFilter.saveState(state.createChild(CLASS_UNLOADING_FILTER));
 			classDefineFilter.saveState(state.createChild(CLASS_DEFINE_FILTER));
 			classLoaderStatisticsFilter.saveState(state.createChild(CLASS_LOADER_STATISTICS_FILTER));
diff a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/CodeCachePage.java b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/CodeCachePage.java
--- a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/CodeCachePage.java
+++ b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/CodeCachePage.java
@@ -290,11 +290,11 @@
 			chartLegend.setLabelProvider(LEGEND_LP);
 			chartLegend.addCheckStateListener(e -> buildChart());
 			chartLegend.addSelectionChangedListener(e -> buildChart());
 			ColumnViewerToolTipSupport.enableFor(chartLegend);
 			List<Object> chartSeries = new ArrayList<>();
-			JavaVersion version = RulesToolkit.getJavaVersion(getDataSource().getItems()); 
+			JavaVersion version = RulesToolkit.getJavaVersion(getDataSource().getItems());
 			if (version != null && version.isGreaterOrEqualThan(JavaVersionSupport.JDK_9)) {
 				CODE_CACHE_UNALLOCATED_SEGMENTED.getAttributes().stream().map(IAttribute::getIdentifier)
 						.forEach(chartSeries::add);
 				CODE_CACHE_ENTRIES_SEGMENTED.getAttributes().stream().map(IAttribute::getIdentifier)
 						.forEach(chartSeries::add);
diff a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/FileIOPage.java b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/FileIOPage.java
--- a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/FileIOPage.java
+++ b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/FileIOPage.java
@@ -166,14 +166,14 @@
 		LIST.addColumn(JdkAttributes.IO_FILE_BYTES_READ);
 		LIST.addColumn(JdkAttributes.IO_FILE_BYTES_WRITTEN);
 		LIST.addColumn(JfrAttributes.EVENT_THREAD);
 		LIST.addColumn(JdkAttributes.IO_FILE_READ_EOF);
 
-		PERCENTILES.addSeries(PERCENTILE_READ_TIME, Messages.FileIOPage_ROW_FILE_READ,
-				PERCENTILE_READ_COUNT, JdkAggregators.FILE_READ_COUNT.getName(), JdkTypeIDs.FILE_READ);
-		PERCENTILES.addSeries(PERCENTILE_WRITE_TIME, Messages.FileIOPage_ROW_FILE_WRITE,
-				PERCENTILE_WRITE_COUNT, JdkAggregators.FILE_WRITE_COUNT.getName(), JdkTypeIDs.FILE_WRITE);
+		PERCENTILES.addSeries(PERCENTILE_READ_TIME, Messages.FileIOPage_ROW_FILE_READ, PERCENTILE_READ_COUNT,
+				JdkAggregators.FILE_READ_COUNT.getName(), JdkTypeIDs.FILE_READ);
+		PERCENTILES.addSeries(PERCENTILE_WRITE_TIME, Messages.FileIOPage_ROW_FILE_WRITE, PERCENTILE_WRITE_COUNT,
+				JdkAggregators.FILE_WRITE_COUNT.getName(), JdkTypeIDs.FILE_WRITE);
 	}
 
 	private class IOPageUi implements IPageUI {
 		private static final String FILE_IO_TABLE = "fileIoTable"; //$NON-NLS-1$
 		private static final String FILE_IO_LIST = "fileIoList"; //$NON-NLS-1$
@@ -410,11 +410,11 @@
 			percentileTable.update(selectedItems);
 
 			IXDataRenderer sizeRoot = RendererToolkit.uniformRows(sizeRows);
 			IQuantity sizeMax = selectedItems.getAggregate(JdkAggregators.FILE_READ_LARGEST);
 			// FIXME: Workaround to make max value included
-			sizeMax = sizeMax == null ? UnitLookup.BYTE.quantity(64): sizeMax.add(UnitLookup.BYTE.quantity(64));
+			sizeMax = sizeMax == null ? UnitLookup.BYTE.quantity(64) : sizeMax.add(UnitLookup.BYTE.quantity(64));
 			XYChart sizeChart = new XYChart(UnitLookup.BYTE.quantity(0), sizeMax, sizeRoot, 180);
 			DataPageToolkit.setChart(sizeCanvas, sizeChart, JdkAttributes.IO_SIZE,
 					selection -> pageContainer.showSelection(selection));
 			sizeChart.setVisibleRange(sizeRange.getStart(), sizeRange.getEnd());
 			sizeChart.addVisibleRangeListener(range -> sizeRange = range);
diff a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/GarbageCollectionsPage.java b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/GarbageCollectionsPage.java
--- a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/GarbageCollectionsPage.java
+++ b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/GarbageCollectionsPage.java
@@ -269,11 +269,12 @@
 				LONGEST_PAUSE_COLOR, b -> buildChart());
 		private final IAction sumOfPauses = createAggregatorCheckAction(TOTAL_GC_PAUSE, "sumOfPauses", //$NON-NLS-1$
 				SUM_OF_PAUSES_COLOR, b -> buildChart());
 		private final List<IAction> allChartSeriesActions = Stream.concat(
 				Stream.concat(HEAP_SUMMARY.getAttributes().stream(),
-						Stream.concat(HEAP_SUMMARY_POST_GC.getAttributes().stream(), METASPACE_SUMMARY.getAttributes().stream()))
+						Stream.concat(HEAP_SUMMARY_POST_GC.getAttributes().stream(),
+								METASPACE_SUMMARY.getAttributes().stream()))
 						.map(a -> createAttributeCheckAction(a, b -> buildChart())),
 				Stream.of(longestPause, sumOfPauses, enablePhases, GCEventThread)).collect(Collectors.toList());
 		private final Set<String> excludedAttributeIds;
 		private FilterComponent tableFilter;
 		private XYChart gcChart;
@@ -343,12 +344,12 @@
 			itemListMm.add(tableFilter.getShowSearchAction());
 
 			gcInfoFolder = new CTabFolder(tableSash, SWT.NONE);
 			phasesList = PHASES.buildWithoutBorder(gcInfoFolder, TableSettings.forState(state.getChild(PHASE_LIST)));
 			phasesList.getManager().getViewer().addSelectionChangedListener(e -> {
-					buildChart();	
-					pageContainer.showSelection(ItemCollectionToolkit.build(phasesList.getSelection().get()));
+				buildChart();
+				pageContainer.showSelection(ItemCollectionToolkit.build(phasesList.getSelection().get()));
 			});
 			phasesFilter = FilterComponent.createFilterComponent(phasesList, phasesFilterState,
 					getDataSource().getItems().apply(JdkFilters.GC_PAUSE_PHASE),
 					pageContainer.getSelectionStore()::getSelections, this::onPhasesFilterChange);
 			MCContextMenuManager phasesMm = MCContextMenuManager
@@ -389,13 +390,14 @@
 			gd.widthHint = 180;
 			chartLegend.getControl().setLayoutData(gd);
 			lanes = new ThreadGraphLanes(() -> getDataSource(), () -> buildChart());
 			lanes.initializeChartConfiguration(Stream.of(state.getChildren(THREAD_LANES)));
 			IAction editLanesAction = ActionToolkit.action(() -> lanes.openEditLanesDialog(mm, false),
-					Messages.ThreadsPage_EDIT_LANES, FlightRecorderUI.getDefault().getMCImageDescriptor(ImageConstants.ICON_LANES_EDIT));
+					Messages.ThreadsPage_EDIT_LANES,
+					FlightRecorderUI.getDefault().getMCImageDescriptor(ImageConstants.ICON_LANES_EDIT));
 			form.getToolBarManager().add(editLanesAction);
-			
+
 			DataPageToolkit.createChartTimestampTooltip(chartCanvas);
 			gcChart = new XYChart(pageContainer.getRecordingRange(), renderRoot, 180);
 			gcChart.setVisibleRange(timelineRange.getStart(), timelineRange.getEnd());
 			gcChart.addVisibleRangeListener(r -> timelineRange = r);
 
@@ -415,15 +417,16 @@
 			phasesList.getManager().setSelectionState(phasesSelection);
 			metaspaceList.getManager().setSelectionState(metaspaceSelection);
 			mm = (MCContextMenuManager) chartCanvas.getContextMenu();
 			lanes.updateContextMenu(mm, false);
 			lanes.updateContextMenu(MCContextMenuManager.create(chartLegend.getControl()), true);
-			
+
 			// Older recordings may not have thread information in pause events.
 			// In those cases there is no need for the thread activity actions.
-			if (!getDataSource().getItems().apply(ItemFilters.and(ItemFilters.hasAttribute(JfrAttributes.EVENT_THREAD),
-					JdkFilters.GC_PAUSE)).hasItems()) {
+			if (!getDataSource().getItems()
+					.apply(ItemFilters.and(ItemFilters.hasAttribute(JfrAttributes.EVENT_THREAD), JdkFilters.GC_PAUSE))
+					.hasItems()) {
 				editLanesAction.setEnabled(false);
 				editLanesAction.setToolTipText(Messages.GarbageCollectionsPage_DISABLED_TOOLTIP);
 				GCEventThread.setEnabled(false);
 				GCEventThread.setDescription(Messages.GarbageCollectionsPage_DISABLED_TOOLTIP);
 				for (IAction action : lanes.getContextMenuActions()) {
@@ -500,12 +503,12 @@
 			Predicate<IAttribute<IQuantity>> legendFilter = this::isAttributeEnabled;
 			DataPageToolkit.buildLinesRow(Messages.GarbageCollectionsPage_ROW_HEAP,
 					Messages.GarbageCollectionsPage_ROW_HEAP_DESC, allItems, false, HEAP_SUMMARY, legendFilter,
 					UnitLookup.BYTE.quantity(0), null).ifPresent(rows::add);
 			DataPageToolkit.buildLinesRow(Messages.GarbageCollectionsPage_ROW_HEAP_POST_GC,
-					Messages.GarbageCollectionsPage_ROW_HEAP_POST_GC_DESC, allItems, false, HEAP_SUMMARY_POST_GC, legendFilter,
-					UnitLookup.BYTE.quantity(0), null).ifPresent(rows::add);
+					Messages.GarbageCollectionsPage_ROW_HEAP_POST_GC_DESC, allItems, false, HEAP_SUMMARY_POST_GC,
+					legendFilter, UnitLookup.BYTE.quantity(0), null).ifPresent(rows::add);
 			DataPageToolkit.buildLinesRow(Messages.GarbageCollectionsPage_ROW_METASPACE,
 					Messages.GarbageCollectionsPage_ROW_METASPACE_DESC, allItems, false, METASPACE_SUMMARY,
 					legendFilter, UnitLookup.BYTE.quantity(0), null).ifPresent(rows::add);
 			// Pauses
 			List<IXDataRenderer> gcPauseRows = new ArrayList<>();
@@ -529,20 +532,24 @@
 				ItemRow l2 = buildSpanRow(allItems, JdkTypeIDs.GC_PAUSE_L2);
 				ItemRow l3 = buildSpanRow(allItems, JdkTypeIDs.GC_PAUSE_L3);
 				ItemRow l4 = buildSpanRow(allItems, JdkTypeIDs.GC_PAUSE_L4);
 				rows.add(RendererToolkit.uniformRows(Arrays.asList(pauses, l1, l2, l3, l4), enablePhases.getText()));
 			}
-			IItemFilter pauseThreadsFilter = ItemFilters.and(JdkFilters.GC_PAUSE, ItemFilters.hasAttribute(JfrAttributes.EVENT_THREAD));
+			IItemFilter pauseThreadsFilter = ItemFilters.and(JdkFilters.GC_PAUSE,
+					ItemFilters.hasAttribute(JfrAttributes.EVENT_THREAD));
 			// Thread information may not be available in earlier recordings, ensure we actually have items before proceeding
-			if (GCEventThread.isChecked() && phasesList.getSelection().get().count() > 0 
+			if (GCEventThread.isChecked() && phasesList.getSelection().get().count() > 0
 					&& allItems.apply(pauseThreadsFilter).hasItems()) {
 				// Get the event threads from the selected events
-				IAggregator<Set<IMCThread>, ?> distinctThreadsAggregator = Aggregators.distinct(JfrAttributes.EVENT_THREAD);
+				IAggregator<Set<IMCThread>, ?> distinctThreadsAggregator = Aggregators
+						.distinct(JfrAttributes.EVENT_THREAD);
 				IItemCollection items = ItemCollectionToolkit.build(phasesList.getSelection().get());
 				Set<IMCThread> threads = items.getAggregate(distinctThreadsAggregator);
-				List<IXDataRenderer> renderers = threads.stream().map((thread) ->lanes.buildThreadRenderer(thread,
-						getDataSource().getItems().apply(ItemFilters.equals(JfrAttributes.EVENT_THREAD, thread))))
+				List<IXDataRenderer> renderers = threads.stream()
+						.map((thread) -> lanes.buildThreadRenderer(thread,
+								getDataSource().getItems()
+										.apply(ItemFilters.equals(JfrAttributes.EVENT_THREAD, thread))))
 						.collect(Collectors.toList());
 				rows.add(RendererToolkit.uniformRows(renderers));
 			}
 
 			renderRoot = RendererToolkit.layers(RendererToolkit.uniformRows(rows), buildTableSelectionRenderer());
diff a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/JVMInformationPage.java b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/JVMInformationPage.java
--- a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/JVMInformationPage.java
+++ b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/JVMInformationPage.java
@@ -133,11 +133,10 @@
 		types.add(JdkTypeIDs.INT_FLAG_CHANGED);
 		types.add(JdkTypeIDs.UINT_FLAG_CHANGED);
 		FLAGS_LOG = Collections.unmodifiableSet(types);
 	}
 
-
 	private static final IItemFilter FLAGS_FILTER = ItemFilters.type(FLAGS);
 
 	private static final IAccessorFactory<?> FLAG_VALUE_FIELD = new IAccessorFactory<Object>() {
 
 		@Override
@@ -249,11 +248,12 @@
 			allFlagsTable = FLAG_HISTOGRAM.buildWithoutBorder(allFlagsSection,
 					new TableSettings(state.getChild(JVM_FLAGS)));
 			allFlagsFilter = FilterComponent.createFilterComponent(allFlagsTable, flagsFilter,
 					getDataSource().getItems().apply(FLAGS_FILTER), pageContainer.getSelectionStore()::getSelections,
 					this::onFlagsFilterChange);
-			MCContextMenuManager flagsMm = MCContextMenuManager.create(allFlagsTable.getManager().getViewer().getControl());
+			MCContextMenuManager flagsMm = MCContextMenuManager
+					.create(allFlagsTable.getManager().getViewer().getControl());
 			ColumnMenusFactory.addDefaultMenus(allFlagsTable.getManager(), flagsMm);
 			flagsMm.add(allFlagsFilter.getShowFilterAction());
 			flagsMm.add(allFlagsFilter.getShowSearchAction());
 			allFlagsSection.setClient(allFlagsFilter.getComponent());
 
@@ -265,14 +265,13 @@
 					Messages.JVMInformationPage_SECTION_JVM_FLAGS_LOG);
 			allFlagsLogTable = FLAG_LOG_HISTOGRAM.buildWithoutBorder(allFlagsLogSection,
 					new TableSettings(state.getChild(JVM_FLAGS_LOG)));
 			allFlagsLogFilter = FilterComponent.createFilterComponent(allFlagsLogTable, flagsLogFilter,
 					getDataSource().getItems().apply(FLAGS_LOG_FILTER),
-					pageContainer.getSelectionStore()::getSelections,
-					this::onFlagsLogFilterChange);
-			MCContextMenuManager flagsLogMm = MCContextMenuManager.create(
-					allFlagsLogTable.getManager().getViewer().getControl());
+					pageContainer.getSelectionStore()::getSelections, this::onFlagsLogFilterChange);
+			MCContextMenuManager flagsLogMm = MCContextMenuManager
+					.create(allFlagsLogTable.getManager().getViewer().getControl());
 			ColumnMenusFactory.addDefaultMenus(allFlagsLogTable.getManager(), flagsLogMm);
 			flagsLogMm.add(allFlagsLogFilter.getShowFilterAction());
 			flagsLogMm.add(allFlagsLogFilter.getShowSearchAction());
 			allFlagsLogSection.setClient(allFlagsLogFilter.getComponent());
 
diff a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/JavaApplicationPage.java b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/JavaApplicationPage.java
--- a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/JavaApplicationPage.java
+++ b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/JavaApplicationPage.java
@@ -229,11 +229,12 @@
 			buildChart();
 
 			addResultActions(form);
 			tableFilterComponent.loadState(state.getChild(METHOD_PROFILING_TABLE_FILTER));
 			form.getToolBarManager()
-					.add(ActionToolkit.action(() -> lanes.openEditLanesDialog(mm, false), Messages.ThreadsPage_EDIT_LANES,
+					.add(ActionToolkit.action(() -> lanes.openEditLanesDialog(mm, false),
+							Messages.ThreadsPage_EDIT_LANES,
 							FlightRecorderUI.getDefault().getMCImageDescriptor(ImageConstants.ICON_LANES_EDIT)));
 			form.getToolBarManager().add(new Separator());
 			OrientationAction.installActions(form, sash);
 
 			chart.addVisibleRangeListener(r -> visibleRange = r);
diff a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/MemoryLeakPage.java b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/MemoryLeakPage.java
--- a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/MemoryLeakPage.java
+++ b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/MemoryLeakPage.java
@@ -142,12 +142,14 @@
 		private final Predicate<ReferenceTreeObject> withinTimeRangePredicateFromRootObject = rto -> {
 			if (timeRange != null) {
 				if (rto.getTimestamp().compareTo(timeRange.getStart()) >= 0
 						&& rto.getTimestamp().compareTo(timeRange.getEnd()) <= 0) {
 					return true;
-				} else if (rto.getRootObject().getOldObjectSamples() != null && rto.getRootObject().getOldObjectSamples().size() > 1) {
-					for (Map.Entry<IQuantity, ReferenceTreeObject> rt : rto.getRootObject().getOldObjectSamples().entrySet()) {
+				} else if (rto.getRootObject().getOldObjectSamples() != null
+						&& rto.getRootObject().getOldObjectSamples().size() > 1) {
+					for (Map.Entry<IQuantity, ReferenceTreeObject> rt : rto.getRootObject().getOldObjectSamples()
+							.entrySet()) {
 						if (rt.getKey().compareTo(timeRange.getStart()) >= 0
 								&& rt.getKey().compareTo(timeRange.getEnd()) <= 0) {
 							return true;
 						}
 					}
@@ -274,11 +276,12 @@
 					protected String getTextTyped(ReferenceTreeObject object) {
 						IRange<IQuantity> selectionRange = chart.getSelectionRange();
 						if (selectionRange == null) {
 							return object == null ? "" : Integer.toString(object.getObjectsKeptAliveCount()); //$NON-NLS-1$
 						} else {
-							return (object == null || selectionRange == null) ? "" : Integer.toString(model.getLeakCountInRange(selectionRange, object)); //$NON-NLS-1$
+							return (object == null || selectionRange == null) ? "" //$NON-NLS-1$
+									: Integer.toString(model.getLeakCountInRange(selectionRange, object));
 						}
 					};
 				}).style(SWT.RIGHT).comparator((o1, o2) -> {
 					if (o1 instanceof ReferenceTreeObject && o2 instanceof ReferenceTreeObject) {
 						return ((ReferenceTreeObject) o1).getObjectsKeptAliveCount()
diff a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/RecordingPage.java b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/RecordingPage.java
--- a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/RecordingPage.java
+++ b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/RecordingPage.java
@@ -132,12 +132,12 @@
 					ic -> UnitLookup.EPOCH_NS.quantity(
 							pageContainer.getRecordingRange().getStart().clampedLongValueIn(UnitLookup.EPOCH_NS)),
 					Messages.RecordingPage_RECORDING_EVENTS_START, Messages.RecordingPage_RECORDING_EVENT_START_DESC);
 			infoViewer.addAggregate(JdkAggregators.ITEM_COUNT);
 			infoViewer.addValueFunction(
-					ic -> UnitLookup.EPOCH_NS
-							.quantity(pageContainer.getRecordingRange().getEnd().clampedLongValueIn(UnitLookup.EPOCH_NS)),
+					ic -> UnitLookup.EPOCH_NS.quantity(
+							pageContainer.getRecordingRange().getEnd().clampedLongValueIn(UnitLookup.EPOCH_NS)),
 					Messages.RecordingPage_RECORDING_EVENTS_END, Messages.RecordingPage_RECORDING_EVENT_END_DESC);
 			infoViewer.addAggregate(JdkAggregators.DUMP_REASON);
 			infoViewer.addValueFunction(
 					ic -> UnitLookup.NANOSECOND.quantity(
 							pageContainer.getRecordingRange().getExtent().clampedLongValueIn(UnitLookup.NANOSECOND)),
diff a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/SocketIOPage.java b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/SocketIOPage.java
--- a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/SocketIOPage.java
+++ b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/SocketIOPage.java
@@ -193,14 +193,14 @@
 		LIST.addColumn(JdkAttributes.IO_SOCKET_BYTES_WRITTEN);
 		LIST.addColumn(JfrAttributes.EVENT_THREAD);
 		LIST.addColumn(JdkAttributes.IO_SOCKET_READ_EOS);
 		LIST.addColumn(JdkAttributes.IO_TIMEOUT);
 
-		PERCENTILES.addSeries(PERCENTILE_READ_TIME, Messages.SocketIOPage_ROW_SOCKET_READ,
-				PERCENTILE_READ_COUNT, JdkAggregators.SOCKET_READ_COUNT.getName(), JdkTypeIDs.SOCKET_READ);
-		PERCENTILES.addSeries(PERCENTILE_WRITE_TIME, Messages.SocketIOPage_ROW_SOCKET_WRITE,
-				PERCENTILE_WRITE_COUNT, JdkAggregators.SOCKET_WRITE_COUNT.getName(), JdkTypeIDs.SOCKET_WRITE);
+		PERCENTILES.addSeries(PERCENTILE_READ_TIME, Messages.SocketIOPage_ROW_SOCKET_READ, PERCENTILE_READ_COUNT,
+				JdkAggregators.SOCKET_READ_COUNT.getName(), JdkTypeIDs.SOCKET_READ);
+		PERCENTILES.addSeries(PERCENTILE_WRITE_TIME, Messages.SocketIOPage_ROW_SOCKET_WRITE, PERCENTILE_WRITE_COUNT,
+				JdkAggregators.SOCKET_WRITE_COUNT.getName(), JdkTypeIDs.SOCKET_WRITE);
 	}
 
 	private enum HistogramType {
 		HOST, PORT, HOST_AND_PORT
 	}
@@ -297,26 +297,26 @@
 					Messages.SocketIOPage_PERCENTILE_SELECTION, percentileTableMm);
 			percentileTable.getManager().setSelectionState(percentileSelection);
 			t2.setText(Messages.PAGES_DURATIONS);
 			t2.setControl(durationParent);
 
-			IQuantity sizeMax = QuantitiesToolkit.maxPresent(socketItems.getAggregate(JdkAggregators.SOCKET_READ_LARGEST),
+			IQuantity sizeMax = QuantitiesToolkit.maxPresent(
+					socketItems.getAggregate(JdkAggregators.SOCKET_READ_LARGEST),
 					socketItems.getAggregate(JdkAggregators.SOCKET_WRITE_LARGEST));
 			// FIXME: Workaround to make max value included
-			sizeMax = sizeMax == null ? UnitLookup.BYTE.quantity(64): sizeMax.add(UnitLookup.BYTE.quantity(64));
+			sizeMax = sizeMax == null ? UnitLookup.BYTE.quantity(64) : sizeMax.add(UnitLookup.BYTE.quantity(64));
 			sizeChart = new XYChart(UnitLookup.BYTE.quantity(0), sizeMax, RendererToolkit.empty(), 180);
 			sizeChart.setVisibleRange(sizeRange.getStart(), sizeMax);
 			sizeChart.addVisibleRangeListener(range -> sizeRange = range);
 
 			CTabItem t3 = new CTabItem(tabFolder, SWT.NONE);
 			t3.setToolTipText(Messages.IO_PAGE_SIZE_DESCRIPTION);
 			sizeCanvas = new ChartCanvas(tabFolder);
 			t3.setText(Messages.PAGES_SIZE);
 			t3.setControl(sizeCanvas);
 			DataPageToolkit.createChartTooltip(sizeCanvas);
-			DataPageToolkit.setChart(sizeCanvas, sizeChart, JdkAttributes.IO_SIZE,
-					pageContainer::showSelection);
+			DataPageToolkit.setChart(sizeCanvas, sizeChart, JdkAttributes.IO_SIZE, pageContainer::showSelection);
 			SelectionStoreActionToolkit.addSelectionStoreActions(pageContainer.getSelectionStore(), sizeChart,
 					JdkAttributes.IO_SIZE, Messages.SocketIOPage_SIZE_SELECTION, sizeCanvas.getContextMenu());
 
 			CTabItem t4 = new CTabItem(tabFolder, SWT.NONE);
 			t4.setToolTipText(Messages.IO_PAGE_EVENT_LOG_DESCRIPTION);
@@ -525,12 +525,12 @@
 				durationRows
 						.add(DataPageToolkit.buildDurationHistogram(Messages.SocketIOPage_ROW_SOCKET_READ + hostCount,
 								JdkAggregators.SOCKET_READ_COUNT.getDescription(), readItems,
 								JdkAggregators.SOCKET_READ_COUNT, READ_COLOR));
 				sizeRows.add(DataPageToolkit.buildSizeHistogram(Messages.SocketIOPage_ROW_SOCKET_READ + hostCount,
-						JdkAggregators.SOCKET_READ_COUNT.getDescription(), readItems,
-						JdkAggregators.SOCKET_READ_COUNT, READ_COLOR, JdkAttributes.IO_SOCKET_BYTES_READ));
+						JdkAggregators.SOCKET_READ_COUNT.getDescription(), readItems, JdkAggregators.SOCKET_READ_COUNT,
+						READ_COLOR, JdkAttributes.IO_SOCKET_BYTES_READ));
 			}
 			IItemCollection writeItems = selectedItems.apply(JdkFilters.SOCKET_WRITE);
 			if (writeItems.hasItems()) {
 				timelineRows.add(DataPageToolkit.buildSizeRow(Messages.SocketIOPage_ROW_SOCKET_WRITE + hostCount,
 						JdkAggregators.SOCKET_WRITE_SIZE.getDescription(), writeItems, JdkAggregators.SOCKET_WRITE_SIZE,
diff a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/ThreadsPage.java b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/ThreadsPage.java
--- a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/ThreadsPage.java
+++ b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/ThreadsPage.java
@@ -174,11 +174,12 @@
 			addActionsToContextMenu(mm);
 			// FIXME: The lanes field is initialized by initializeChartConfiguration which is called by the super constructor. This is too indirect for SpotBugs to resolve and should be simplified.
 			lanes.updateContextMenu(mm, false);
 
 			form.getToolBarManager()
-					.add(ActionToolkit.action(() -> lanes.openEditLanesDialog(mm, false), Messages.ThreadsPage_EDIT_LANES,
+					.add(ActionToolkit.action(() -> lanes.openEditLanesDialog(mm, false),
+							Messages.ThreadsPage_EDIT_LANES,
 							FlightRecorderUI.getDefault().getMCImageDescriptor(ImageConstants.ICON_LANES_EDIT)));
 			form.getToolBarManager().update(true);
 			chartLegend.getControl().dispose();
 			buildChart();
 			table.getManager().setSelectionState(histogramSelectionState);
@@ -261,10 +262,11 @@
 		}
 
 		private void setHideThreadActionEnablement(Boolean enabled) {
 			this.hideThreadAction.setEnabled(enabled);
 		}
+
 		private void setResetChartActionEnablement(Boolean enabled) {
 			this.resetChartAction.setEnabled(enabled);
 		}
 
 		@Override
diff a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/itemhandler/AttributeComponentConfiguration.java b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/itemhandler/AttributeComponentConfiguration.java
--- a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/itemhandler/AttributeComponentConfiguration.java
+++ b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/pages/itemhandler/AttributeComponentConfiguration.java
@@ -77,19 +77,18 @@
 		populateAttributeMaps(isSuitableForLineCharts(items, allTypes));
 	}
 
 	private void forEachType(IItemCollection items) {
 		if (items != null) {
-			ItemCollectionToolkit.stream(items).map(IItemIterable::getType)
-					.forEach(type -> {
-						allTypes.put(type.getIdentifier(), type);
-						for (IAttribute<?> a : type.getAttributes()) {
-							if (!a.equals(JfrAttributes.EVENT_STACKTRACE)) {
-								allAttributes.put(ItemList.getColumnId(a), a);
-							}
-						}
-					});
+			ItemCollectionToolkit.stream(items).map(IItemIterable::getType).forEach(type -> {
+				allTypes.put(type.getIdentifier(), type);
+				for (IAttribute<?> a : type.getAttributes()) {
+					if (!a.equals(JfrAttributes.EVENT_STACKTRACE)) {
+						allAttributes.put(ItemList.getColumnId(a), a);
+					}
+				}
+			});
 		}
 	}
 
 	private void populateAttributeMaps(boolean allowLineCharts) {
 		for (Entry<String, IAttribute<?>> a : allAttributes.entrySet()) {
diff a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/views/stacktrace/StacktraceView.java b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/views/stacktrace/StacktraceView.java
--- a/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/views/stacktrace/StacktraceView.java
+++ b/application/org.openjdk.jmc.flightrecorder.ui/src/main/java/org/openjdk/jmc/flightrecorder/ui/views/stacktrace/StacktraceView.java
@@ -639,14 +639,13 @@
 	@Override
 	public void selectionChanged(IWorkbenchPart part, ISelection selection) {
 		if (selection instanceof IStructuredSelection) {
 			Object first = ((IStructuredSelection) selection).getFirstElement();
 			IItemCollection items = AdapterUtil.getAdapter(first, IItemCollection.class);
-			if(items == null) {
+			if (items == null) {
 				setItems(ItemCollectionToolkit.build(Stream.empty()));
-			}
-			else if (!items.equals(itemsToShow)) {
+			} else if (!items.equals(itemsToShow)) {
 				setItems(items);
 			}
 		}
 	}
 
@@ -783,11 +782,12 @@
 						threadRootAtTop ? ImageConstants.ICON_ARROW_CURVED_DOWN : ImageConstants.ICON_ARROW_CURVED_UP);
 			} else if (isFirstInBranchWithSiblings(frame)) {
 				return plugin.getImage(
 						threadRootAtTop ? ImageConstants.ICON_ARROW_FORK3_DOWN : ImageConstants.ICON_ARROW_FORK3_UP);
 			} else if (isLastFrame(frame)) {
-				return plugin.getImage(threadRootAtTop ? ImageConstants.ICON_ARROW_DOWN_END : ImageConstants.ICON_ARROW_UP_END);
+				return plugin.getImage(
+						threadRootAtTop ? ImageConstants.ICON_ARROW_DOWN_END : ImageConstants.ICON_ARROW_UP_END);
 			} else {
 				return plugin.getImage(threadRootAtTop ? ImageConstants.ICON_ARROW_DOWN : ImageConstants.ICON_ARROW_UP);
 			}
 		}
 
@@ -816,11 +816,11 @@
 	}
 
 	private static boolean isFirstInBranchWithSiblings(StacktraceFrame frame) {
 		return frame.getBranch().getFirstFrame() == frame && frame.getBranch().getParentFork().getBranchCount() > 1;
 	}
-	
+
 	private static boolean isLastFrame(StacktraceFrame frame) {
 		return frame.getBranch().getLastFrame() == frame && frame.getBranch().getEndFork().getBranchCount() == 0;
 	}
 
 	/*
diff a/application/org.openjdk.jmc.greychart.ui/pom.xml b/application/org.openjdk.jmc.greychart.ui/pom.xml
--- a/application/org.openjdk.jmc.greychart.ui/pom.xml
+++ b/application/org.openjdk.jmc.greychart.ui/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.greychart.ui</artifactId>
 	<packaging>eclipse-plugin</packaging>
+	
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.greychart/pom.xml b/application/org.openjdk.jmc.greychart/pom.xml
--- a/application/org.openjdk.jmc.greychart/pom.xml
+++ b/application/org.openjdk.jmc.greychart/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.greychart</artifactId>
 	<packaging>eclipse-plugin</packaging>
+		
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.greychart/src/main/java/org/openjdk/jmc/greychart/GreyChartPanel.java b/application/org.openjdk.jmc.greychart/src/main/java/org/openjdk/jmc/greychart/GreyChartPanel.java
--- a/application/org.openjdk.jmc.greychart/src/main/java/org/openjdk/jmc/greychart/GreyChartPanel.java
+++ b/application/org.openjdk.jmc.greychart/src/main/java/org/openjdk/jmc/greychart/GreyChartPanel.java
@@ -56,12 +56,12 @@
 
 	private static final String PROPERTY_KEY_DEBUG = "org.openjdk.jmc.greychart.debug"; //$NON-NLS-1$
 	private static final String PROPERTY_KEY_SHOWRENDERINGTIME = "org.openjdk.jmc.greychart.showrenderingtime"; //$NON-NLS-1$
 	static final long serialVersionUID = 0x0001;
 	/**
-	 * DEBUG flag initialized from the system property org.openjdk.jmc.greychart.debug on startup. Will
-	 * cause rendering to take place directly on screen.
+	 * DEBUG flag initialized from the system property org.openjdk.jmc.greychart.debug on startup.
+	 * Will cause rendering to take place directly on screen.
 	 */
 	public final static boolean DEBUG;
 	private final static boolean SHOW_RENDERING_TIME;
 	private static final int[] EMPTY_INT_ARRAY = new int[0];
 	private static final double[] EMPTY_DOUBLE_ARRAY = new double[0];
@@ -152,11 +152,11 @@
 				/*
 				 * FIXME: This assumes that every component beyond this point restores the altered
 				 * properties of the graphics context when exiting its rendering function. We might
 				 * want to do Graphics2D g2d = (Graphics2D) g.create(); and finally dispose of the
 				 * graphics.
-				 */ 
+				 */
 				m_lastTargetArea.width = getWidth();
 				m_lastTargetArea.height = getHeight();
 				m_chart.render((Graphics2D) g, m_lastTargetArea);
 			} else {
 				g.drawImage(createPlotImage(m_lastTargetArea.width, m_lastTargetArea.height), m_lastTargetArea.x,
diff a/application/org.openjdk.jmc.greychart/src/main/java/org/openjdk/jmc/greychart/impl/DefaultVerticalIndexRenderer.java b/application/org.openjdk.jmc.greychart/src/main/java/org/openjdk/jmc/greychart/impl/DefaultVerticalIndexRenderer.java
--- a/application/org.openjdk.jmc.greychart/src/main/java/org/openjdk/jmc/greychart/impl/DefaultVerticalIndexRenderer.java
+++ b/application/org.openjdk.jmc.greychart/src/main/java/org/openjdk/jmc/greychart/impl/DefaultVerticalIndexRenderer.java
@@ -179,11 +179,11 @@
 			fm = ctx.getFontMetrics(ctx.getFont().deriveFont(getMinimumFontSize()));
 		} else {
 			fm = ctx.getFontMetrics();
 		}
 
-		String[] names = new String[0]; 
+		String[] names = new String[0];
 		// FIXME: Get series names
 //		String[] names = getTruncatedSeriesNames(m_maxStringLength);
 //		if (names == null) {
 //			return new Dimension(0, totalDrawingArea.height);
 //		}
diff a/application/org.openjdk.jmc.greychart/src/main/java/org/openjdk/jmc/greychart/impl/DefaultXYGreyChart.java b/application/org.openjdk.jmc.greychart/src/main/java/org/openjdk/jmc/greychart/impl/DefaultXYGreyChart.java
--- a/application/org.openjdk.jmc.greychart/src/main/java/org/openjdk/jmc/greychart/impl/DefaultXYGreyChart.java
+++ b/application/org.openjdk.jmc.greychart/src/main/java/org/openjdk/jmc/greychart/impl/DefaultXYGreyChart.java
@@ -166,11 +166,11 @@
 	@Override
 	public void render(Graphics2D ctx, Rectangle where) {
 		if (m_oldResolution == 0) {
 			m_oldResolution = (int) (Math.round(where.getWidth()));
 		}
-		if (hasDataProvider() && m_optimizingProvider != null) { 
+		if (hasDataProvider() && m_optimizingProvider != null) {
 			// FIXME: we shouldn't have to check the optimizing provider, it should go away if data provider is null
 			// FIXME: Resolution should account for y axis width
 			m_optimizingProvider.setResolution(m_oldResolution);
 			m_optimizingProvider.setRange(getXAxis().getMin().longValue(), getXAxis().getMax().longValue());
 			if (m_optimizingProvider.update()) {
@@ -200,11 +200,11 @@
 		// Widths
 		total_left = sum(dataArray, YAxis.Position.LEFT);
 		total_right = sum(dataArray, YAxis.Position.RIGHT);
 		plot_w = Math.max(where.width - index_w - total_left - total_right, 0);
 
-		if (hasDataProvider() && m_optimizingProvider != null && m_oldResolution != plot_w) { 
+		if (hasDataProvider() && m_optimizingProvider != null && m_oldResolution != plot_w) {
 			// FIXME: we shouldn't have to check the optimizing provider, it should go away if data provider is null
 			m_optimizingProvider.setResolution(plot_w);
 			m_oldResolution = plot_w;
 			m_optimizingProvider.update();
 		}
diff a/application/org.openjdk.jmc.greychart/src/main/java/org/openjdk/jmc/greychart/providers/AveragingSampleBuffer.java b/application/org.openjdk.jmc.greychart/src/main/java/org/openjdk/jmc/greychart/providers/AveragingSampleBuffer.java
--- a/application/org.openjdk.jmc.greychart/src/main/java/org/openjdk/jmc/greychart/providers/AveragingSampleBuffer.java
+++ b/application/org.openjdk.jmc.greychart/src/main/java/org/openjdk/jmc/greychart/providers/AveragingSampleBuffer.java
@@ -83,11 +83,11 @@
 	}
 
 	private void addSegmentToBucket(
 		int bucketIndex, double segmentHeigth, double segmentGradient, double segmentWidth) {
 		double segmentArea = (segmentHeigth + segmentGradient * segmentWidth / 2) * segmentWidth;
-		SamplePoint sp = getSamplePoint(bucketIndex);	
+		SamplePoint sp = getSamplePoint(bucketIndex);
 		sp.y += segmentArea;
 		sp.count++;
 	}
 
 	public void fixSamples() {
diff a/application/org.openjdk.jmc.ide.jdt/pom.xml b/application/org.openjdk.jmc.ide.jdt/pom.xml
--- a/application/org.openjdk.jmc.ide.jdt/pom.xml
+++ b/application/org.openjdk.jmc.ide.jdt/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.ide.jdt</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.ide.launch/pom.xml b/application/org.openjdk.jmc.ide.launch/pom.xml
--- a/application/org.openjdk.jmc.ide.launch/pom.xml
+++ b/application/org.openjdk.jmc.ide.launch/pom.xml
@@ -39,6 +39,10 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.ide.launch</artifactId>
 	<version>0.0.4-SNAPSHOT</version>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.ide.ui/pom.xml b/application/org.openjdk.jmc.ide.ui/pom.xml
--- a/application/org.openjdk.jmc.ide.ui/pom.xml
+++ b/application/org.openjdk.jmc.ide.ui/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.ide.ui</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.jdp/pom.xml b/application/org.openjdk.jmc.jdp/pom.xml
--- a/application/org.openjdk.jmc.jdp/pom.xml
+++ b/application/org.openjdk.jmc.jdp/pom.xml
@@ -38,10 +38,15 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.jdp</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>org.eclipse.tycho</groupId>
 				<artifactId>tycho-compiler-plugin</artifactId>
diff a/application/org.openjdk.jmc.jdp/src/main/java/org/openjdk/jmc/jdp/common/ConfigurationFactory.java b/application/org.openjdk.jmc.jdp/src/main/java/org/openjdk/jmc/jdp/common/ConfigurationFactory.java
--- a/application/org.openjdk.jmc.jdp/src/main/java/org/openjdk/jmc/jdp/common/ConfigurationFactory.java
+++ b/application/org.openjdk.jmc.jdp/src/main/java/org/openjdk/jmc/jdp/common/ConfigurationFactory.java
@@ -47,11 +47,12 @@
 		InetAddress tmp = null;
 		try {
 			tmp = InetAddress.getByName(Configuration.DEFAULT_MULTICAST_ADDRESS);
 		} catch (UnknownHostException e) {
 			// Multicast address by IP, should never happen!
-			Logger.getLogger("org.openjdk.jmc.jdp.common").log(Level.SEVERE, "Could not create default mulitcast address!", //$NON-NLS-1$ //$NON-NLS-2$
+			Logger.getLogger("org.openjdk.jmc.jdp.common").log(Level.SEVERE, //$NON-NLS-1$
+					"Could not create default mulitcast address!", //$NON-NLS-1$
 					e);
 		}
 		DEFAULT_MULTICAST_ADDRESS = tmp;
 	}
 
diff a/application/org.openjdk.jmc.joverflow.ui/pom.xml b/application/org.openjdk.jmc.joverflow.ui/pom.xml
--- a/application/org.openjdk.jmc.joverflow.ui/pom.xml
+++ b/application/org.openjdk.jmc.joverflow.ui/pom.xml
@@ -39,6 +39,10 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.joverflow.ui</artifactId>
 	<version>1.0.1-SNAPSHOT</version>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/HeapDumpAction.java b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/HeapDumpAction.java
--- a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/HeapDumpAction.java
+++ b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/HeapDumpAction.java
@@ -90,12 +90,12 @@
 				Throwable root = e;
 				while (root.getCause() != null) {
 					root = root.getCause();
 				}
 				final String message = root.getMessage() != null ? root.getMessage() : root.toString();
-				DisplayToolkit.safeAsyncExec(() -> DialogToolkit
-						.showError(Display.getCurrent().getActiveShell(), "Failed to create Heap Dump", message));
+				DisplayToolkit.safeAsyncExec(() -> DialogToolkit.showError(Display.getCurrent().getActiveShell(),
+						"Failed to create Heap Dump", message));
 			} finally {
 				IOToolkit.closeSilently(connector);
 			}
 		};
 	}
@@ -130,11 +130,12 @@
 			};
 			DisplayToolkit.safeSyncExec(() -> {
 				InputDialog dialog = new InputDialog(Display.getCurrent().getActiveShell(), "Enter a destination file",
 						"Enter a path to the destination file in the remote filesystem. "
 								+ "You will have to make the file available in the local filesystem manually, "
-								+ "for example by moving it or using a shared filesystem.", "", null);
+								+ "for example by moving it or using a shared filesystem.",
+						"", null);
 				if (dialog.open() == Window.OK) {
 					String s = dialog.getValue();
 					opener.file = new File(s.endsWith(HPROF_FILE_EXTENSION) ? s : s + "." + HPROF_FILE_EXTENSION);
 				}
 			});
diff a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/JOverflowUi.java b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/JOverflowUi.java
--- a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/JOverflowUi.java
+++ b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/JOverflowUi.java
@@ -141,12 +141,12 @@
 
 	private void updateModel() {
 		ClusterType currentType = mOverheadTypeViewer.getCurrentType();
 
 		mClusterGroupViewer.setQualifierName(
-				currentType == ClusterType.DUPLICATE_STRING || currentType == ClusterType.DUPLICATE_ARRAY ?
-						"Duplicate" : null);
+				currentType == ClusterType.DUPLICATE_STRING || currentType == ClusterType.DUPLICATE_ARRAY ? "Duplicate"
+						: null);
 		// Loop all reference chains
 		for (ReferenceChain chain : mModel) {
 			RefChainElement rce = chain.getReferenceChain();
 			// Check filters for reference chains
 			if (mReferrerViewer.filter(rce) && mAncestorViewer.filter(rce)) {
diff a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/JavaThingPage.java b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/JavaThingPage.java
--- a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/JavaThingPage.java
+++ b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/JavaThingPage.java
@@ -107,12 +107,11 @@
 
 	@Override
 	public void allIncluded() {
 		if (mCurrentTask != null) {
 			mTaskCancelled = true;
-			mCurrentTask
-					.cancel(false);// Don't stop the thread directly. Interruption breaks the atomicity inside getObjectAtGlobalIndex
+			mCurrentTask.cancel(false);// Don't stop the thread directly. Interruption breaks the atomicity inside getObjectAtGlobalIndex
 		}
 
 		if (mBackground != null && !mBackground.isDone()) {
 			mBackground.cancel(false);
 		}
diff a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/JavaThingItem.java b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/JavaThingItem.java
--- a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/JavaThingItem.java
+++ b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/JavaThingItem.java
@@ -46,11 +46,12 @@
 	private final String name;
 	private final String value;
 	private final String size;
 
 	public JavaThingItem(int level, String name, JavaThing content) {
-		this(level, name, content == null ? "null" : content.valueAsString(), content == null ? 0 : content.getSize(), content); //$NON-NLS-1$
+		this(level, name, content == null ? "null" : content.valueAsString(), content == null ? 0 : content.getSize(), //$NON-NLS-1$
+				content);
 	}
 
 	public JavaThingItem(int level, String name, String value, int size, JavaThing content) {
 		this.level = level;
 		this.content = content;
diff a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/MemoryStatisticsItem.java b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/MemoryStatisticsItem.java
--- a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/MemoryStatisticsItem.java
+++ b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/MemoryStatisticsItem.java
@@ -31,12 +31,12 @@
  * WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 package org.openjdk.jmc.joverflow.ui.model;
 
 /**
- * Class holding an aggregate of mOverhead/mMemory/mSize for a number of {@code ObjectCluster}. The group is identified by
- * {@code id}
+ * Class holding an aggregate of mOverhead/mMemory/mSize for a number of {@code ObjectCluster}. The
+ * group is identified by {@code id}
  */
 public class MemoryStatisticsItem {
 	private final Object id;
 	private Integer index;
 
diff a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ModelListener.java b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ModelListener.java
--- a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ModelListener.java
+++ b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ModelListener.java
@@ -37,20 +37,21 @@
 /**
  * Used to listed to model updates.
  */
 public interface ModelListener {
 	/**
-	 * For each model update, this method is called with every object included in the model (that is not filtered out)
+	 * For each model update, this method is called with every object included in the model (that is
+	 * not filtered out)
 	 * 
 	 * @param cluster
 	 *            The object cluster
 	 * @param referenceChain
 	 *            The reference chain for {@code cluster}
 	 */
 	void include(ObjectCluster cluster, RefChainElement referenceChain);
 
 	/**
-	 * Called once for each model update after {@code include} has been called with every {@code ObjectCluster} in the
-	 * model
+	 * Called once for each model update after {@code include} has been called with every
+	 * {@code ObjectCluster} in the model
 	 */
 	void allIncluded();
 }
diff a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ModelLoader.java b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ModelLoader.java
--- a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ModelLoader.java
+++ b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ModelLoader.java
@@ -147,21 +147,23 @@
 		ObjectClusterImpl np = getObjectCluster(referer, ClusterType.ALL_OBJECTS, cn, null);
 		np.addObject(obj.getGlobalObjectIndex(), obj.getSize(), 0);
 	}
 
 	@Override
-	public void recordDuplicateString(JavaObject obj, String val, int implInclusiveSize, int ovhd, boolean hasDupCharArray, RefChainElement referer) {
+	public void recordDuplicateString(
+		JavaObject obj, String val, int implInclusiveSize, int ovhd, boolean hasDupCharArray, RefChainElement referer) {
 		String cn = obj.getClazz().getHumanFriendlyName();
 		ObjectClusterImpl p = getObjectCluster(referer, ClusterType.DUPLICATE_STRING, cn, obj.valueAsString());
 		p.addObject(obj.getGlobalObjectIndex(), implInclusiveSize, ovhd);
 
 		ObjectClusterImpl np = getObjectCluster(referer, ClusterType.ALL_OBJECTS, cn, null);
 		np.addObject(obj.getGlobalObjectIndex(), implInclusiveSize, 0);
 	}
 
 	@Override
-	public void recordGoodCollection(JavaLazyReadObject obj, CollectionInstanceDescriptor colDesc, RefChainElement referer) {
+	public void recordGoodCollection(
+		JavaLazyReadObject obj, CollectionInstanceDescriptor colDesc, RefChainElement referer) {
 		String cn = obj.getClazz().getHumanFriendlyName();
 		ObjectClusterImpl p = getObjectCluster(referer, ClusterType.ALL_OBJECTS, cn, null);
 		p.addObject(obj.getGlobalObjectIndex(), colDesc.getImplSize(), 0);
 	}
 
@@ -186,33 +188,36 @@
 		p.addObject(obj.getGlobalObjectIndex(), implInclusiveSize, 0);
 	}
 
 	@Override
 	public void recordProblematicCollection(
-		JavaLazyReadObject obj, CollectionInstanceDescriptor colDesc, Constants.ProblemKind ovhdKind, int ovhd, RefChainElement referer) {
+		JavaLazyReadObject obj, CollectionInstanceDescriptor colDesc, Constants.ProblemKind ovhdKind, int ovhd,
+		RefChainElement referer) {
 		String cn = obj.getClazz().getHumanFriendlyName();
 		ObjectClusterImpl p = getObjectCluster(referer, ClusterType.fromProblemKind(ovhdKind), cn, null);
 		p.addObject(obj.getGlobalObjectIndex(), colDesc.getImplSize(), ovhd);
 
 		ObjectClusterImpl np = getObjectCluster(referer, ClusterType.ALL_OBJECTS, cn, null);
 		np.addObject(obj.getGlobalObjectIndex(), colDesc.getImplSize(), 0);
 	}
 
 	@Override
 	public void recordWeakHashMapWithBackRefs(
-		JavaObject obj, CollectionInstanceDescriptor colDesc, int ovhd, String valueTypeAndFieldSample, RefChainElement referer) {
+		JavaObject obj, CollectionInstanceDescriptor colDesc, int ovhd, String valueTypeAndFieldSample,
+		RefChainElement referer) {
 		String cn = obj.getClazz().getHumanFriendlyName();
 		ObjectClusterImpl p = getObjectCluster(referer, ClusterType.WEAK_MAP_WITH_BACK_REFS, cn, null);
 		p.addObject(obj.getGlobalObjectIndex(), obj.getSize(), ovhd);
 
 		ObjectClusterImpl np = getObjectCluster(referer, ClusterType.ALL_OBJECTS, cn, null);
 		np.addObject(obj.getGlobalObjectIndex(), obj.getSize(), 0);
 	}
 
 	private Collection<ReferenceChain> buildModel() {
 		ArrayList<ReferenceChain> sums = new ArrayList<>();
-		Iterator<Entry<RefChainElement, Map<ClusterType, Map<String, ObjectClusterImpl>>>> clusterIterator = clusterMap.entrySet().iterator();
+		Iterator<Entry<RefChainElement, Map<ClusterType, Map<String, ObjectClusterImpl>>>> clusterIterator = clusterMap
+				.entrySet().iterator();
 		while (clusterIterator.hasNext()) {
 			Entry<RefChainElement, Map<ClusterType, Map<String, ObjectClusterImpl>>> e = clusterIterator.next();
 			ReferenceChain summary = new ReferenceChain(e.getKey());
 			for (Map<String, ObjectClusterImpl> s : e.getValue().values()) {
 				for (ObjectClusterImpl j : s.values()) {
@@ -227,12 +232,14 @@
 		clusterMap = null;
 		sums.trimToSize();
 		return sums;
 	}
 
-	private ObjectClusterImpl getObjectCluster(RefChainElement referrer, ClusterType type, String className, String qualifier) {
-		Map<ClusterType, Map<String, ObjectClusterImpl>> m1 = clusterMap.computeIfAbsent(referrer, k -> new HashMap<>());
+	private ObjectClusterImpl getObjectCluster(
+		RefChainElement referrer, ClusterType type, String className, String qualifier) {
+		Map<ClusterType, Map<String, ObjectClusterImpl>> m1 = clusterMap.computeIfAbsent(referrer,
+				k -> new HashMap<>());
 		Map<String, ObjectClusterImpl> m2 = m1.computeIfAbsent(type, k -> new HashMap<>());
 		String id = StringInterner.internString(className + "|" + qualifier);
 		ObjectClusterImpl p = m2.get(id);
 		if (p == null) {
 			p = new ObjectClusterImpl(type, className, qualifier == null ? null : qualifier.intern());
@@ -247,11 +254,12 @@
 		}
 		return loaderListener;
 	}
 
 	private synchronized double getProgress() {
-		return (reader == null ? 0 : reader.getProgressPercentage() / 200.0) + (calculator == null ? 0 : calculator.getProgressPercentage() / 200.0);
+		return (reader == null ? 0 : reader.getProgressPercentage() / 200.0)
+				+ (calculator == null ? 0 : calculator.getProgressPercentage() / 200.0);
 	}
 
 	private synchronized void setCalculator(StandardStatsCalculator dsc) {
 		calculator = dsc;
 	}
diff a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ModelLoaderListener.java b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ModelLoaderListener.java
--- a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ModelLoaderListener.java
+++ b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ModelLoaderListener.java
@@ -43,12 +43,12 @@
 	 * @param failure
 	 */
 	void onModelLoadFailed(Throwable failure);
 
 	/**
-	 * Called when loading is completed successfully. The model is represented by a collection of {@code ReferenceChain}
-	 * Additional info can be loaded from {@code snapshot}
+	 * Called when loading is completed successfully. The model is represented by a collection of
+	 * {@code ReferenceChain} Additional info can be loaded from {@code snapshot}
 	 * 
 	 * @param snapshot
 	 * @param model
 	 */
 	void onModelLoaded(Snapshot snapshot, Collection<ReferenceChain> model);
diff a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ObjectCluster.java b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ObjectCluster.java
--- a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ObjectCluster.java
+++ b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ObjectCluster.java
@@ -31,12 +31,12 @@
  * WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 package org.openjdk.jmc.joverflow.ui.model;
 
 /**
- * A collection of objects of a specific class and qualifier marked with a ClusterType. Qualifier may be null. Each
- * cluster holds aggregated data for the objects.
+ * A collection of objects of a specific class and qualifier marked with a ClusterType. Qualifier
+ * may be null. Each cluster holds aggregated data for the objects.
  */
 public interface ObjectCluster {
 
 	ClusterType getType();
 
diff a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ReferenceChain.java b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ReferenceChain.java
--- a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ReferenceChain.java
+++ b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ReferenceChain.java
@@ -36,11 +36,12 @@
 import java.util.Iterator;
 
 import org.openjdk.jmc.joverflow.support.RefChainElement;
 
 /**
- * Collection of a number of {@code ObjectCluster} sharing the same reference chain held by {@code RefChainElement}
+ * Collection of a number of {@code ObjectCluster} sharing the same reference chain held by
+ * {@code RefChainElement}
  */
 public class ReferenceChain implements Iterable<ObjectCluster> {
 
 	private final ArrayList<ObjectCluster> objectClusters = new ArrayList<>();
 	private final RefChainElement referenceChain;
diff a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ReferrerItem.java b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ReferrerItem.java
--- a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ReferrerItem.java
+++ b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ReferrerItem.java
@@ -35,23 +35,24 @@
 import java.util.List;
 
 import org.openjdk.jmc.joverflow.support.RefChainElement;
 
 /**
- * Aggregates a number of referrers with a the same initial referrer chain Holds overhead/memory/size for the
- * {@code ObjectCluster} referred to by these referrers.
+ * Aggregates a number of referrers with a the same initial referrer chain Holds
+ * overhead/memory/size for the {@code ObjectCluster} referred to by these referrers.
  */
 public class ReferrerItem {
 
 	private long ovhd;
 	private long memory;
 	private int size;
 	private final String referrer;
 	private final boolean isBranch;
 	private final List<String> commonReferrers;
 
-	ReferrerItem(List<String> commonReferrers, String referrer, long memory, long overhead, int objectCount, boolean isBranch) {
+	ReferrerItem(List<String> commonReferrers, String referrer, long memory, long overhead, int objectCount,
+			boolean isBranch) {
 		this.isBranch = isBranch;
 		this.referrer = referrer;
 		this.commonReferrers = commonReferrers;
 		ovhd = overhead;
 		this.memory = memory;
diff a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ReferrerItemBuilder.java b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ReferrerItemBuilder.java
--- a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ReferrerItemBuilder.java
+++ b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/model/ReferrerItemBuilder.java
@@ -38,11 +38,12 @@
 import java.util.Map;
 
 import org.openjdk.jmc.joverflow.support.RefChainElement;
 
 /**
- * Builder used to construct a list of {@code ReferrerItem} that represents a tree with only a single branching level
+ * Builder used to construct a list of {@code ReferrerItem} that represents a tree with only a
+ * single branching level
  */
 public class ReferrerItemBuilder {
 
 	private final Map<String, ReferrerItem> itemsAtBranchingLevel = new IdentityHashMap<>();
 	private List<String> commonChain = new ArrayList<>();
@@ -70,11 +71,12 @@
 				if (ref == null || !referrerName.equals(ref.toString())) {
 					// A new branching level is found
 					// Create a new branch item with the currently common aggregate values
 					commonChain = commonChain.subList(0, commonDepth);
 					itemsAtBranchingLevel.clear();
-					itemsAtBranchingLevel.put(referrerName, new ReferrerItem(commonChain, referrerName, commonMemory, commonOverhead, commonCount, true));
+					itemsAtBranchingLevel.put(referrerName, new ReferrerItem(commonChain, referrerName, commonMemory,
+							commonOverhead, commonCount, true));
 					break;
 				}
 				ref = ref.getReferer();
 				commonDepth++;
 			}
@@ -104,11 +106,12 @@
 
 	public List<ReferrerItem> buildReferrerList() {
 		List<ReferrerItem> items = new ArrayList<>();
 		int commonDepth = 0;
 		for (String r : commonChain) {
-			items.add(new ReferrerItem(commonChain.subList(0, commonDepth), r, commonMemory, commonOverhead, commonCount, false));
+			items.add(new ReferrerItem(commonChain.subList(0, commonDepth), r, commonMemory, commonOverhead,
+					commonCount, false));
 			commonDepth++;
 		}
 		items.addAll(itemsAtBranchingLevel.values());
 		return items;
 	}
diff a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/util/BaseArcAttributeProvider.java b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/util/BaseArcAttributeProvider.java
--- a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/util/BaseArcAttributeProvider.java
+++ b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/util/BaseArcAttributeProvider.java
@@ -39,17 +39,13 @@
 
 public class BaseArcAttributeProvider implements IArcAttributeProvider {
 	private final ListenerList<IArcAttributeProviderListener> mListenerList = new ListenerList<>();
 
 	private final Color[] COLORS = {new Color(Display.getDefault(), 169, 226, 0),
-			new Color(Display.getDefault(), 249, 217, 0),
-			new Color(Display.getDefault(), 34, 186, 217),
-			new Color(Display.getDefault(), 1, 129, 226),
-			new Color(Display.getDefault(), 47, 53, 127),
-			new Color(Display.getDefault(), 134, 0, 97),
-			new Color(Display.getDefault(), 198, 43, 0),
-	};
+			new Color(Display.getDefault(), 249, 217, 0), new Color(Display.getDefault(), 34, 186, 217),
+			new Color(Display.getDefault(), 1, 129, 226), new Color(Display.getDefault(), 47, 53, 127),
+			new Color(Display.getDefault(), 134, 0, 97), new Color(Display.getDefault(), 198, 43, 0),};
 
 	private int i = 0;
 
 	public BaseArcAttributeProvider() {
 		addListener((event) -> i = 0);
diff a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/util/ColorIndexedArcAttributeProvider.java b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/util/ColorIndexedArcAttributeProvider.java
--- a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/util/ColorIndexedArcAttributeProvider.java
+++ b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/util/ColorIndexedArcAttributeProvider.java
@@ -79,11 +79,11 @@
 		}
 
 		if ((double) getWeight(element) / (double) totalWeight * 360f < minimumAngle) {
 			color = COLOR_GRAY;
 		} else {
-			color =  super.getColor(element);
+			color = super.getColor(element);
 		}
 
 		colors.put(element, color);
 		return color;
 	}
diff a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/AncestorViewer.java b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/AncestorViewer.java
--- a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/AncestorViewer.java
+++ b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/AncestorViewer.java
@@ -147,12 +147,12 @@
 				mPieChart.setMinimumArcAngle(5);
 				mPieChart.getPieChart().setZoomRatio(1.2);
 				mPieChart.setComparator(new ViewerComparator() {
 					@Override
 					public int compare(Viewer viewer, Object e1, Object e2) {
-						return (int) (((MemoryStatisticsItem) e2).getMemory() - ((MemoryStatisticsItem) e1)
-								.getMemory());
+						return (int) (((MemoryStatisticsItem) e2).getMemory()
+								- ((MemoryStatisticsItem) e1).getMemory());
 					}
 				});
 
 				mFilterList = new FilterList<>(container, SWT.NONE);
 				mFilterList.addFilterChangedListener(this::notifyFilterChangedListeners);
@@ -189,12 +189,11 @@
 						return excluded;
 					}
 
 					@Override
 					public String toString() {
-						return "Ancestors" + (excluded ? " \u220C " : " \u220B ")
-								+ ancestor; //$NON-NLS-2$ //$NON-NLS-3$
+						return "Ancestors" + (excluded ? " \u220C " : " \u220B ") + ancestor; //$NON-NLS-2$ //$NON-NLS-3$
 					}
 
 					@Override
 					public int hashCode() {
 						return ancestor.hashCode();
diff a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/ClusterGroupViewer.java b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/ClusterGroupViewer.java
--- a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/ClusterGroupViewer.java
+++ b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/ClusterGroupViewer.java
@@ -115,12 +115,12 @@
 				mPieChart.setMinimumArcAngle(5);
 				mPieChart.getPieChart().setZoomRatio(1.2);
 				mPieChart.setComparator(new ViewerComparator() {
 					@Override
 					public int compare(Viewer viewer, Object e1, Object e2) {
-						return (int) (((MemoryStatisticsItem) e2).getMemory() - ((MemoryStatisticsItem) e1)
-								.getMemory());
+						return (int) (((MemoryStatisticsItem) e2).getMemory()
+								- ((MemoryStatisticsItem) e1).getMemory());
 					}
 				});
 
 				mFilterList = new FilterList<>(container, SWT.NONE);
 				mFilterList.addFilterChangedListener(this::notifyFilterChangedListeners);
diff a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/JavaThingTreeViewer.java b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/JavaThingTreeViewer.java
--- a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/JavaThingTreeViewer.java
+++ b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/JavaThingTreeViewer.java
@@ -110,12 +110,11 @@
 					}
 				} else if (thing instanceof JavaObjectArray) {
 					JavaObjectArray o = (JavaObjectArray) thing;
 					int i = 0;
 					for (JavaThing th : o.getElements()) {
-						items.add(new JavaThingItem(item.getLevel() + 1, "[" + (i++) + "]",
-								th)); //$NON-NLS-1$ //$NON-NLS-2$
+						items.add(new JavaThingItem(item.getLevel() + 1, "[" + (i++) + "]", th)); //$NON-NLS-1$ //$NON-NLS-2$
 					}
 				} else if (thing instanceof JavaValueArray) {
 					JavaValueArray o = (JavaValueArray) thing;
 					int i = 0;
 					for (String value : o.getValuesAsStrings()) {
diff a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/MemoryStatisticsTableViewer.java b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/MemoryStatisticsTableViewer.java
--- a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/MemoryStatisticsTableViewer.java
+++ b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/MemoryStatisticsTableViewer.java
@@ -216,14 +216,14 @@
 		if (mPieChartViewer != null) {
 			mPieChartViewer.setHighlightedItem(item);
 		}
 	}
 
-	private TableViewerColumn createTableColumnViewer(String label,
-			Function<MemoryStatisticsItem, String> labelProvider,
-			Function<MemoryStatisticsItem, String> toolTipProvider, Function<MemoryStatisticsItem, Color> colorProvider,
-			Comparator<MemoryStatisticsItem> comparator) {
+	private TableViewerColumn createTableColumnViewer(
+		String label, Function<MemoryStatisticsItem, String> labelProvider,
+		Function<MemoryStatisticsItem, String> toolTipProvider, Function<MemoryStatisticsItem, Color> colorProvider,
+		Comparator<MemoryStatisticsItem> comparator) {
 		TableViewerColumn column = new TableViewerColumn(this, SWT.NONE);
 		column.getColumn().setWidth(200);
 		column.getColumn().setText(label);
 		column.getColumn().setMoveable(true);
 
diff a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/PieChartViewer.java b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/PieChartViewer.java
--- a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/PieChartViewer.java
+++ b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/PieChartViewer.java
@@ -250,12 +250,12 @@
 		if (angleSum != 0 && angleSum != 360 && inputs.size() != 0) {
 			for (int i = inputs.size() - 1; i >= 0; i--) {
 				Object input = inputs.get(i);
 				ArcItem item = mPieChart.getItem(i);
 
-				int w = 360 - angleSum + (int) Math
-						.round(360 * (double) mArcAttributeProvider.getWeight(input) / weightSum);
+				int w = 360 - angleSum
+						+ (int) Math.round(360 * (double) mArcAttributeProvider.getWeight(input) / weightSum);
 				if (w < 0) {
 					continue;
 				}
 				item.setAngle(w);
 				break;
diff a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/ReferrerTreeViewer.java b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/ReferrerTreeViewer.java
--- a/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/ReferrerTreeViewer.java
+++ b/application/org.openjdk.jmc.joverflow.ui/src/main/java/org/openjdk/jmc/joverflow/ui/viewers/ReferrerTreeViewer.java
@@ -174,12 +174,12 @@
 		getTable().setHeaderVisible(true);
 		ColumnViewerToolTipSupport.enableFor(this);
 	}
 
 	private TableViewerColumn createTreeViewerColumn(
-			String label, Function<ReferrerItem, String> labelProvider, Function<ReferrerItem, String> toolTipProvider,
-			Comparator<ReferrerItem> comparator, boolean intent) {
+		String label, Function<ReferrerItem, String> labelProvider, Function<ReferrerItem, String> toolTipProvider,
+		Comparator<ReferrerItem> comparator, boolean intent) {
 		TableViewerColumn column = new TableViewerColumn(this, SWT.NONE);
 		column.getColumn().setWidth(200);
 		column.getColumn().setText(label);
 		column.getColumn().setMoveable(true);
 
@@ -202,21 +202,19 @@
 				if (intent) {
 					dx += 10 * ((ReferrerItem) element).getLevel();
 
 					Color fg = event.gc.getForeground();
 					event.gc.setForeground(referrerIconColor);
-					event.gc.drawPolygon(new int[] {
-							3 + dx, dy, //
+					event.gc.drawPolygon(new int[] {3 + dx, dy, //
 							6 + dx, 7 + dy, //
 							4 + dx, 7 + dy, //
 							4 + dx, 9 + dy, //
 							8 + dx, 9 + dy, //
 							8 + dx, 11 + dy, //
 							2 + dx, 11 + dy, //
 							2 + dx, 7 + dy, //
-							dx, 7 + dy
-					});
+							dx, 7 + dy});
 					event.gc.setForeground(fg);
 					dx += 11 + margin;
 				}
 
 				event.gc.drawString(labelProvider.apply((ReferrerItem) element), dx, bounds.y + margin, true);
diff a/application/org.openjdk.jmc.joverflow/pom.xml b/application/org.openjdk.jmc.joverflow/pom.xml
--- a/application/org.openjdk.jmc.joverflow/pom.xml
+++ b/application/org.openjdk.jmc.joverflow/pom.xml
@@ -39,6 +39,10 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.joverflow</artifactId>
 	<version>1.0.0-SNAPSHOT</version>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/batch/BatchProblemRecorder.java b/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/batch/BatchProblemRecorder.java
--- a/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/batch/BatchProblemRecorder.java
+++ b/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/batch/BatchProblemRecorder.java
@@ -66,20 +66,15 @@
  */
 public class BatchProblemRecorder implements ProblemRecorder {
 
 	private static final int HIGH_SIZE = 1;
 
-	private IdentityHashMap<RefChainElement, HighSizeObjCluster> refererToHSCluster = new IdentityHashMap<>(
-			128);
-	private IdentityHashMap<RefChainElement, CollectionCluster> refererToColCluster = new IdentityHashMap<>(
-			128);
-	private IdentityHashMap<RefChainElement, DupStringCluster> refererToDSCluster = new IdentityHashMap<>(
-			256);
-	private IdentityHashMap<RefChainElement, DupArrayCluster> refererToDACluster = new IdentityHashMap<>(
-			32);
-	private IdentityHashMap<RefChainElement, WeakHashMapCluster> refererToWMCluster = new IdentityHashMap<>(
-			4);
+	private IdentityHashMap<RefChainElement, HighSizeObjCluster> refererToHSCluster = new IdentityHashMap<>(128);
+	private IdentityHashMap<RefChainElement, CollectionCluster> refererToColCluster = new IdentityHashMap<>(128);
+	private IdentityHashMap<RefChainElement, DupStringCluster> refererToDSCluster = new IdentityHashMap<>(256);
+	private IdentityHashMap<RefChainElement, DupArrayCluster> refererToDACluster = new IdentityHashMap<>(32);
+	private IdentityHashMap<RefChainElement, WeakHashMapCluster> refererToWMCluster = new IdentityHashMap<>(4);
 
 	private JavaHeapObject lastObj;
 
 	@Override
 	public void initialize(Snapshot snapshot, HeapStats hs) {
@@ -232,28 +227,23 @@
 		List<List<? extends ReferencedObjCluster>> clustersWithFullRefChains = getProblematicDataClustersWithFullRefChains(
 				minOvhd);
 		List<List<? extends ReferencedObjCluster>> clustersWithNearestField = getProblematicDataClustersWithNearestField(
 				minOvhd);
 
-		List<List<ReferencedObjCluster.HighSizeObjects>> highSizeObjClusters = new ArrayList<>(
-				2);
+		List<List<ReferencedObjCluster.HighSizeObjects>> highSizeObjClusters = new ArrayList<>(2);
 		highSizeObjClusters.add((List<ReferencedObjCluster.HighSizeObjects>) clustersWithFullRefChains.get(4));
 		highSizeObjClusters.add((List<ReferencedObjCluster.HighSizeObjects>) clustersWithNearestField.get(4));
-		List<List<ReferencedObjCluster.Collections>> collectionClusters = new ArrayList<>(
-				2);
+		List<List<ReferencedObjCluster.Collections>> collectionClusters = new ArrayList<>(2);
 		collectionClusters.add((List<ReferencedObjCluster.Collections>) clustersWithFullRefChains.get(0));
 		collectionClusters.add((List<ReferencedObjCluster.Collections>) clustersWithNearestField.get(0));
-		List<List<ReferencedObjCluster.DupStrings>> dupStringClusters = new ArrayList<>(
-				2);
+		List<List<ReferencedObjCluster.DupStrings>> dupStringClusters = new ArrayList<>(2);
 		dupStringClusters.add((List<ReferencedObjCluster.DupStrings>) clustersWithFullRefChains.get(1));
 		dupStringClusters.add((List<ReferencedObjCluster.DupStrings>) clustersWithNearestField.get(1));
-		List<List<ReferencedObjCluster.DupArrays>> dupArrayClusters = new ArrayList<>(
-				2);
+		List<List<ReferencedObjCluster.DupArrays>> dupArrayClusters = new ArrayList<>(2);
 		dupArrayClusters.add((List<ReferencedObjCluster.DupArrays>) clustersWithFullRefChains.get(2));
 		dupArrayClusters.add((List<ReferencedObjCluster.DupArrays>) clustersWithNearestField.get(2));
-		List<List<ReferencedObjCluster.WeakHashMaps>> weakHashMapClusters = new ArrayList<>(
-				2);
+		List<List<ReferencedObjCluster.WeakHashMaps>> weakHashMapClusters = new ArrayList<>(2);
 		weakHashMapClusters.add((List<ReferencedObjCluster.WeakHashMaps>) clustersWithFullRefChains.get(3));
 		weakHashMapClusters.add((List<ReferencedObjCluster.WeakHashMaps>) clustersWithNearestField.get(3));
 
 		return new DetailedStats(minOvhd, highSizeObjClusters, collectionClusters, weakHashMapClusters,
 				dupStringClusters, dupArrayClusters);
diff a/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/batch/ReferencedObjCluster.java b/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/batch/ReferencedObjCluster.java
--- a/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/batch/ReferencedObjCluster.java
+++ b/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/batch/ReferencedObjCluster.java
@@ -50,12 +50,12 @@
  * Represents a cluster of objects, i.e. all objects reachable via the same reference chain, that
  * have something in common (like, they all are known collections with some kind(s) of overhead, or
  * duplicated strings). One can mentally visualize a cluster of, say, 100 empty HashMaps, reachable
  * from a GC root via a chain of references as something like:
  * <p>
- * GC root1 -&gt; A.b -&gt; {ArrayList} -&gt; C.d -&gt; 100 empty HashMaps, 1000 bytes overhead, 2 non-empty
- * HashMaps
+ * GC root1 -&gt; A.b -&gt; {ArrayList} -&gt; C.d -&gt; 100 empty HashMaps, 1000 bytes overhead, 2
+ * non-empty HashMaps
  * <p>
  * Note that the reference chain may be full, as above, or, for convenience, the tool may provide
  * another "view" for problematic objects, where clusters are aggregated by the nearest data field.
  * In that case, the above reference chain will be reduced to just C.d.
  * <p>
diff a/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/descriptors/ConcurrentHashMapDescriptorForJdk8.java b/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/descriptors/ConcurrentHashMapDescriptorForJdk8.java
--- a/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/descriptors/ConcurrentHashMapDescriptorForJdk8.java
+++ b/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/descriptors/ConcurrentHashMapDescriptorForJdk8.java
@@ -176,12 +176,12 @@
 		}
 	}
 
 	/**
 	 * Overrides superclass method. Get the capacity of each of the two tables inside the
-	 * ConcurrentHashMap and add them. This might not be revised in the future, according to
-	 * how the ConcurrentHashMap works
+	 * ConcurrentHashMap and add them. This might not be revised in the future, according to how the
+	 * ConcurrentHashMap works
 	 */
 	@Override
 	public int getCapacity() {
 		if (cachedTotalCapacity != -1) {
 			return cachedTotalCapacity;
diff a/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/heap/model/JavaClass.java b/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/heap/model/JavaClass.java
--- a/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/heap/model/JavaClass.java
+++ b/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/heap/model/JavaClass.java
@@ -611,11 +611,12 @@
 	public String getName() {
 		return name;
 	}
 
 	/**
-	 * Same as {@link org.openjdk.jmc.joverflow.util.ClassUtils#getShortNameForPopularClass(String)}, but
+	 * Same as
+	 * {@link org.openjdk.jmc.joverflow.util.ClassUtils#getShortNameForPopularClass(String)}, but
 	 * also: - makes names for anonymous classes, like MyFooClass$6, more informative, by adding
 	 * "(SuperClassName)" to them; - For array classes, returns a human-friendly name, such as
 	 * "boolean[]" instead of "[B" or "Object[]" instead of "[Ljava.lang.Object;"
 	 */
 	public String getHumanFriendlyName() {
diff a/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/heap/model/JavaHeapObject.java b/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/heap/model/JavaHeapObject.java
--- a/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/heap/model/JavaHeapObject.java
+++ b/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/heap/model/JavaHeapObject.java
@@ -65,13 +65,13 @@
 
 	/**
 	 * Returns the object's global index. This index is not equal to the object id returned by
 	 * {@link #readId()}. Each JavaLazyReadObject (representing a Java instance, object array or
 	 * primitive array) has a unique index that is &gt; 0. Each JavaClass (that represents a Java
-	 * class) has a unique index that's &lt;= 0. The value returned for JavaClass is an index into the
-	 * internal class list, and thus increments by one. The value returned for a JavaHeapObject is a
-	 * position in the internal compact table, and increments by 3 or 4. In contrast, the long
+	 * class) has a unique index that's &lt;= 0. The value returned for JavaClass is an index into
+	 * the internal class list, and thus increments by one. The value returned for a JavaHeapObject
+	 * is a position in the internal compact table, and increments by 3 or 4. In contrast, the long
 	 * object id normally increments by comparatively large numbers.
 	 */
 	public abstract int getGlobalObjectIndex();
 
 	/**
diff a/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/package-info.java b/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/package-info.java
--- a/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/package-info.java
+++ b/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/package-info.java
@@ -37,10 +37,11 @@
  * <p>
  * It is used in the JOverflow plug-in for JMC, but can also be used headless.
  * <p>
  * Example:
  * <p>
+ * 
  * <pre>
  * {@code 
  *	public static void main(String args[]) throws Exception {
  *		ReportGenerator rg = ReportGenerator.parseDump(
  *				"/tmp/heap-dumps/mydump.hprof", new Progress() {
diff a/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/stats/DetailedStatsCalculator.java b/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/stats/DetailedStatsCalculator.java
--- a/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/stats/DetailedStatsCalculator.java
+++ b/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/stats/DetailedStatsCalculator.java
@@ -58,12 +58,12 @@
 /**
  * This class handles heap dump objects that are given to it by the instance of HeapScaner (that is
  * created in its constructor). The HeapScaner scans the heap from GC roots, keeping the reference
  * chain from a GC root to the current object at all times. This class analyzes each scanned object
  * for various kinds of problems, and records problem type/overhead if anything found via the
- * supplied instance of {@link org.openjdk.jmc.joverflow.support.ProblemRecorder}. See the latter for
- * more information on problems and object kinds that they can occur on.
+ * supplied instance of {@link org.openjdk.jmc.joverflow.support.ProblemRecorder}. See the latter
+ * for more information on problems and object kinds that they can occur on.
  */
 class DetailedStatsCalculator implements ProblemChecker, Constants {
 	private final Snapshot snapshot;
 	private final HeapScaner scaner;
 	private final ProblemRecorder problemRecorder;
diff a/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/support/DupStringStats.java b/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/support/DupStringStats.java
--- a/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/support/DupStringStats.java
+++ b/application/org.openjdk.jmc.joverflow/src/main/java/org/openjdk/jmc/joverflow/support/DupStringStats.java
@@ -39,18 +39,18 @@
 /**
  * Container various duplicate string stats, calculated by
  * {@link org.openjdk.jmc.joverflow.stats.StringStatsCollector}.
  * <p>
  * In particular, getDupStrings() returns the list of duplicate strings sorted by overhead. The
- * overhead is defined as specified in {@link org.openjdk.jmc.joverflow.stats.StringStatsCollector}, but
- * in reality we perform a bit more crude estimate, since duplicate strings may reference sub-ranges
- * of backing char[] arrays, and we don't keep length of each backing char array. The estimate is
- * conservative, i.e. the returned overhead should not be greater than the real one. We also take
- * care of the fact that some shallowly duplicate Strings with different values may point to the
- * same backing arrays. For example, a pair of objects with values "a", "b" both point to 'abc'
- * array, and another pair "a", "b" points to 'abd'. In this case, the size of both 'abc' and 'abd'
- * will count towards overhead, but only once for each (i.e. 3 + 3 chars, not 3 + 3 + 3 + 3).
+ * overhead is defined as specified in {@link org.openjdk.jmc.joverflow.stats.StringStatsCollector},
+ * but in reality we perform a bit more crude estimate, since duplicate strings may reference
+ * sub-ranges of backing char[] arrays, and we don't keep length of each backing char array. The
+ * estimate is conservative, i.e. the returned overhead should not be greater than the real one. We
+ * also take care of the fact that some shallowly duplicate Strings with different values may point
+ * to the same backing arrays. For example, a pair of objects with values "a", "b" both point to
+ * 'abc' array, and another pair "a", "b" points to 'abd'. In this case, the size of both 'abc' and
+ * 'abd' will count towards overhead, but only once for each (i.e. 3 + 3 chars, not 3 + 3 + 3 + 3).
  */
 public class DupStringStats {
 	/** Shallow size of java.lang.String instance in the analyzed heap */
 	public final int stringInstShallowSize;
 
diff a/application/org.openjdk.jmc.osgi.extension/pom.xml b/application/org.openjdk.jmc.osgi.extension/pom.xml
--- a/application/org.openjdk.jmc.osgi.extension/pom.xml
+++ b/application/org.openjdk.jmc.osgi.extension/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.osgi.extension</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.pde/pom.xml b/application/org.openjdk.jmc.pde/pom.xml
--- a/application/org.openjdk.jmc.pde/pom.xml
+++ b/application/org.openjdk.jmc.pde/pom.xml
@@ -39,6 +39,10 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.pde</artifactId>
 	<version>1.0.2-SNAPSHOT</version>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.rcp.application/pom.xml b/application/org.openjdk.jmc.rcp.application/pom.xml
--- a/application/org.openjdk.jmc.rcp.application/pom.xml
+++ b/application/org.openjdk.jmc.rcp.application/pom.xml
@@ -38,10 +38,15 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.rcp.application</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>org.apache.maven.plugins</groupId>
 				<artifactId>maven-resources-plugin</artifactId>
diff a/application/org.openjdk.jmc.rcp.application/src/main/java/org/openjdk/jmc/rcp/application/p2/AddRepositoriesJob.java b/application/org.openjdk.jmc.rcp.application/src/main/java/org/openjdk/jmc/rcp/application/p2/AddRepositoriesJob.java
--- a/application/org.openjdk.jmc.rcp.application/src/main/java/org/openjdk/jmc/rcp/application/p2/AddRepositoriesJob.java
+++ b/application/org.openjdk.jmc.rcp.application/src/main/java/org/openjdk/jmc/rcp/application/p2/AddRepositoriesJob.java
@@ -39,12 +39,12 @@
 import org.eclipse.equinox.p2.core.IProvisioningAgent;
 import org.openjdk.jmc.rcp.application.ApplicationPlugin;
 import org.osgi.framework.BundleContext;
 
 /**
- * We're doing repository initialization as a separate job to avoid blocking the start of Mission Control.
- * 
+ * We're doing repository initialization as a separate job to avoid blocking the start of Mission
+ * Control.
  */
 public final class AddRepositoriesJob extends Job {
 	private final BundleContext context;
 
 	public AddRepositoriesJob(BundleContext context) {
diff a/application/org.openjdk.jmc.rcp.application/src/main/java/org/openjdk/jmc/rcp/application/p2/P2Toolkit.java b/application/org.openjdk.jmc.rcp.application/src/main/java/org/openjdk/jmc/rcp/application/p2/P2Toolkit.java
--- a/application/org.openjdk.jmc.rcp.application/src/main/java/org/openjdk/jmc/rcp/application/p2/P2Toolkit.java
+++ b/application/org.openjdk.jmc.rcp.application/src/main/java/org/openjdk/jmc/rcp/application/p2/P2Toolkit.java
@@ -46,11 +46,10 @@
 import org.openjdk.jmc.rcp.application.ApplicationPlugin;
 import org.openjdk.jmc.rcp.application.Messages;
 
 /**
  * Toolkit for managing P2 repositories.
- * 
  */
 @SuppressWarnings("restriction")
 public final class P2Toolkit {
 	public static void addRepositories(IProvisioningAgent agent) {
 		for (String site : UpdateSiteURLToolkit.getUpdateSites()) {
@@ -72,9 +71,11 @@
 		artifactManager.addRepository(repoUri);
 
 		IMetadataRepositoryManager metadataManager = ProvUI.getMetadataRepositoryManager(ui.getSession());
 		metadataManager.addRepository(repoUri);
 
-		metadataManager.setRepositoryProperty(repoUri, IRepository.PROP_NICKNAME, Messages.JMC_RCP_P2_UPDATESITE_NICK_NAME);
-		artifactManager.setRepositoryProperty(repoUri, IRepository.PROP_NICKNAME, Messages.JMC_RCP_P2_UPDATESITE_NICK_NAME);
+		metadataManager.setRepositoryProperty(repoUri, IRepository.PROP_NICKNAME,
+				Messages.JMC_RCP_P2_UPDATESITE_NICK_NAME);
+		artifactManager.setRepositoryProperty(repoUri, IRepository.PROP_NICKNAME,
+				Messages.JMC_RCP_P2_UPDATESITE_NICK_NAME);
 	}
 }
diff a/application/org.openjdk.jmc.rcp.application/src/main/java/org/openjdk/jmc/rcp/application/scripting/ControlContentAdapter.java b/application/org.openjdk.jmc.rcp.application/src/main/java/org/openjdk/jmc/rcp/application/scripting/ControlContentAdapter.java
--- a/application/org.openjdk.jmc.rcp.application/src/main/java/org/openjdk/jmc/rcp/application/scripting/ControlContentAdapter.java
+++ b/application/org.openjdk.jmc.rcp.application/src/main/java/org/openjdk/jmc/rcp/application/scripting/ControlContentAdapter.java
@@ -37,11 +37,10 @@
 import org.eclipse.swt.custom.StyledText;
 import org.eclipse.swt.graphics.Point;
 import org.eclipse.swt.graphics.Rectangle;
 import org.eclipse.swt.widgets.Control;
 
-
 // FIXME: clean up, we need to investigate further how this is supposed to work.
 public final class ControlContentAdapter implements IControlContentAdapter, IControlContentAdapter2 {
 	@Override
 	public void setControlContents(Control control, String contents, int cursorPosition) {
 		// ignore
diff a/application/org.openjdk.jmc.rcp.intro/pom.xml b/application/org.openjdk.jmc.rcp.intro/pom.xml
--- a/application/org.openjdk.jmc.rcp.intro/pom.xml
+++ b/application/org.openjdk.jmc.rcp.intro/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.rcp.intro</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.rcp.product.feature/pom.xml b/application/org.openjdk.jmc.rcp.product.feature/pom.xml
--- a/application/org.openjdk.jmc.rcp.product.feature/pom.xml
+++ b/application/org.openjdk.jmc.rcp.product.feature/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.rcp.product.feature</artifactId>
 	<packaging>eclipse-feature</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.rcp.product/pom.xml b/application/org.openjdk.jmc.rcp.product/pom.xml
--- a/application/org.openjdk.jmc.rcp.product/pom.xml
+++ b/application/org.openjdk.jmc.rcp.product/pom.xml
@@ -38,13 +38,16 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.rcp.product</artifactId>
 	<packaging>eclipse-repository</packaging>
+
 	<properties>
 		<productName>JDK Mission Control</productName>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
 	</properties>
+
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>org.eclipse.tycho</groupId>
 				<artifactId>tycho-p2-repository-plugin</artifactId>
diff a/application/org.openjdk.jmc.rjmx.ext/pom.xml b/application/org.openjdk.jmc.rjmx.ext/pom.xml
--- a/application/org.openjdk.jmc.rjmx.ext/pom.xml
+++ b/application/org.openjdk.jmc.rjmx.ext/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.rjmx.ext</artifactId>
 	<packaging>eclipse-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.rjmx.services.jfr/pom.xml b/application/org.openjdk.jmc.rjmx.services.jfr/pom.xml
--- a/application/org.openjdk.jmc.rjmx.services.jfr/pom.xml
+++ b/application/org.openjdk.jmc.rjmx.services.jfr/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.rjmx.services.jfr</artifactId>
 	<packaging>eclipse-plugin</packaging>
+	
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.rjmx.services.jfr/src/main/java/org/openjdk/jmc/rjmx/services/jfr/IFlightRecorderService.java b/application/org.openjdk.jmc.rjmx.services.jfr/src/main/java/org/openjdk/jmc/rjmx/services/jfr/IFlightRecorderService.java
--- a/application/org.openjdk.jmc.rjmx.services.jfr/src/main/java/org/openjdk/jmc/rjmx/services/jfr/IFlightRecorderService.java
+++ b/application/org.openjdk.jmc.rjmx.services.jfr/src/main/java/org/openjdk/jmc/rjmx/services/jfr/IFlightRecorderService.java
@@ -53,13 +53,13 @@
  * Implementation, if available, can be retrieved from an
  * {@link IConnectionHandle#getServiceOrNull(Class)}
  */
 public interface IFlightRecorderService extends IRecorderConfigurationService {
 	/**
-	 * Returns the available JDK Flight Recorder recordings. The immutable descriptor represents
-	 * the state at the time the method was called. To get an updated representation the method must
-	 * be called again.
+	 * Returns the available JDK Flight Recorder recordings. The immutable descriptor represents the
+	 * state at the time the method was called. To get an updated representation the method must be
+	 * called again.
 	 *
 	 * @return the available Flight Recording recordings.
 	 * @throws FlightRecorderException
 	 */
 	List<IRecordingDescriptor> getAvailableRecordings() throws FlightRecorderException;
@@ -151,12 +151,12 @@
 	 *             if there was a problem retrieving the metadata.
 	 */
 	Map<? extends IEventTypeID, ? extends IEventTypeInfo> getEventTypeInfoMapByID() throws FlightRecorderException;
 
 	/**
-	 * Returns the currently active settings for all event types, if the JDK Flight Recorder
-	 * version supports this notion. Otherwise, empty settings will be returned.
+	 * Returns the currently active settings for all event types, if the JDK Flight Recorder version
+	 * supports this notion. Otherwise, empty settings will be returned.
 	 *
 	 * @return the current settings for the event types.
 	 * @throws FlightRecorderException
 	 *             if there was a problem retrieving the settings.
 	 */
diff a/application/org.openjdk.jmc.rjmx.services.jfr/src/main/java/org/openjdk/jmc/rjmx/services/jfr/IRecordingDescriptor.java b/application/org.openjdk.jmc.rjmx.services.jfr/src/main/java/org/openjdk/jmc/rjmx/services/jfr/IRecordingDescriptor.java
--- a/application/org.openjdk.jmc.rjmx.services.jfr/src/main/java/org/openjdk/jmc/rjmx/services/jfr/IRecordingDescriptor.java
+++ b/application/org.openjdk.jmc.rjmx.services.jfr/src/main/java/org/openjdk/jmc/rjmx/services/jfr/IRecordingDescriptor.java
@@ -45,27 +45,27 @@
 	/**
 	 * Defines the possible states a recording can be in. {@link RecordingState#CREATED}
 	 * {@link RecordingState#RUNNING} {@link RecordingState#STOPPED}
 	 */
 	public enum RecordingState {
-		/**
-		 * The Recording has been created but not yet started.
-		 */
-		CREATED,
-		/**
-		 * The recording is running, i.e. it has been started, but not yet stopped.
-		 */
-		RUNNING,
-		/**
-		 * The recording has been started, and is stopping, but has not fully completed.
-		 */
-		STOPPING,
-		/**
-		 * The recording has been started, and then stopped. Either because the recording duration
-		 * timed out, or because it was forced to stop.
-		 */
-		STOPPED
+	/**
+	 * The Recording has been created but not yet started.
+	 */
+	CREATED,
+	/**
+	 * The recording is running, i.e. it has been started, but not yet stopped.
+	 */
+	RUNNING,
+	/**
+	 * The recording has been started, and is stopping, but has not fully completed.
+	 */
+	STOPPING,
+	/**
+	 * The recording has been started, and then stopped. Either because the recording duration timed
+	 * out, or because it was forced to stop.
+	 */
+	STOPPED
 	}
 
 	/**
 	 * Returns the id value of the recording.
 	 *
diff a/application/org.openjdk.jmc.rjmx.ui/pom.xml b/application/org.openjdk.jmc.rjmx.ui/pom.xml
--- a/application/org.openjdk.jmc.rjmx.ui/pom.xml
+++ b/application/org.openjdk.jmc.rjmx.ui/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.rjmx.ui</artifactId>
 	<packaging>eclipse-plugin</packaging>
+		
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.rjmx/pom.xml b/application/org.openjdk.jmc.rjmx/pom.xml
--- a/application/org.openjdk.jmc.rjmx/pom.xml
+++ b/application/org.openjdk.jmc.rjmx/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.rjmx</artifactId>
 	<packaging>eclipse-plugin</packaging>
+	
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/IServerHandle.java b/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/IServerHandle.java
--- a/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/IServerHandle.java
+++ b/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/IServerHandle.java
@@ -48,11 +48,11 @@
 	 * it is invalidated for some other reason. If the handle is not disposed it is either
 	 * {@link #CONNECTED} if there is an active connection to the server, or {@link #DISCONNECTED}
 	 * if there is not.
 	 */
 	enum State {
-		DISCONNECTED, CONNECTED, DISPOSED, FAILED;
+	DISCONNECTED, CONNECTED, DISPOSED, FAILED;
 	}
 
 	/**
 	 * @param usage
 	 *            A localized string that may be shown to the user, describing why this connection
diff a/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/internal/MCMBeanServerConnection.java b/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/internal/MCMBeanServerConnection.java
--- a/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/internal/MCMBeanServerConnection.java
+++ b/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/internal/MCMBeanServerConnection.java
@@ -249,11 +249,10 @@
 			}
 		}
 		return filteredAttributes;
 	}
 
-	
 	@Override
 	public Object invoke(ObjectName name, String operationName, Object[] params, String[] signature)
 			throws InstanceNotFoundException, MBeanException, ReflectionException, IOException {
 		logInvokeMessage(name, operationName, params);
 		return delegate.invoke(name, operationName, params, signature);
diff a/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/internal/RJMXConnection.java b/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/internal/RJMXConnection.java
--- a/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/internal/RJMXConnection.java
+++ b/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/internal/RJMXConnection.java
@@ -575,11 +575,12 @@
 	 *             if the connection failed or some other problem occurred when trying create
 	 *             operations.
 	 */
 	public Collection<IOperation> getOperations(ObjectName mbean) throws Exception {
 		MBeanServerConnection connection = ensureConnected();
-		return MBeanOperationWrapper.createOperations(connection, mbean, connection.getMBeanInfo(mbean).getOperations());
+		return MBeanOperationWrapper.createOperations(connection, mbean,
+				connection.getMBeanInfo(mbean).getOperations());
 	}
 
 	IMRIService getMRIService() {
 		return m_mbeanDataProvider;
 	}
diff a/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/package-info.java b/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/package-info.java
--- a/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/package-info.java
+++ b/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/package-info.java
@@ -86,12 +86,12 @@
  * <li>{@link org.openjdk.jmc.rjmx.IConnectionHandle} is an active connection to a server. Must
  * always be closed when not used anymore.</li>
  * <li>{@link org.openjdk.jmc.rjmx.IServerHandle} is a handle used to connect to a server, share the
  * connection between users ( {@link org.openjdk.jmc.rjmx.IConnectionHandle}s), keep track of all
  * open connection handles and close the connection when all connection handles are closed.</li>
- * <li>{@link org.openjdk.jmc.rjmx.servermodel.IServer} represents the entry point to a single server
- * in the model.</li>
+ * <li>{@link org.openjdk.jmc.rjmx.servermodel.IServer} represents the entry point to a single
+ * server in the model.</li>
  * </ul>
  * Notice that the subscription thread is a daemon thread - if trying the example above in a main,
  * add a {@code Thread.sleep(10000)} before the disconnect.
  */
 package org.openjdk.jmc.rjmx;
diff a/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/services/internal/Jdk11CommercialFeaturesService.java b/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/services/internal/Jdk11CommercialFeaturesService.java
--- a/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/services/internal/Jdk11CommercialFeaturesService.java
+++ b/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/services/internal/Jdk11CommercialFeaturesService.java
@@ -33,11 +33,11 @@
 package org.openjdk.jmc.rjmx.services.internal;
 
 import org.openjdk.jmc.rjmx.services.ICommercialFeaturesService;
 
 public class Jdk11CommercialFeaturesService implements ICommercialFeaturesService {
-	
+
 	@Override
 	public boolean isCommercialFeaturesEnabled() {
 		return true;
 	}
 
diff a/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/services/package-info.java b/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/services/package-info.java
--- a/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/services/package-info.java
+++ b/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/services/package-info.java
@@ -47,13 +47,13 @@
  * } finally {
  * 	server.dispose();
  * }
  * </pre>
  *
- * Services are normally added through the <tt>org.openjdk.jmc.rjmx.service</tt> extension point. The
- * extension point requires a factory which will be used to create your service. The factory must
- * implement the {@link org.openjdk.jmc.rjmx.services.IServiceFactory} interface. The following
+ * Services are normally added through the <tt>org.openjdk.jmc.rjmx.service</tt> extension point.
+ * The extension point requires a factory which will be used to create your service. The factory
+ * must implement the {@link org.openjdk.jmc.rjmx.services.IServiceFactory} interface. The following
  * example shows how the flight recorder service is added in the <tt>plugin.xml<tt> for the RJMX
  * plug-in itself:
  *
  * <pre>
 &lt;extension point="org.openjdk.jmc.rjmx.service"&gt;
diff a/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/subscription/package-info.java b/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/subscription/package-info.java
--- a/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/subscription/package-info.java
+++ b/application/org.openjdk.jmc.rjmx/src/main/java/org/openjdk/jmc/rjmx/subscription/package-info.java
@@ -30,11 +30,11 @@
  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
  * WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 /**
  * This package contains everything related to the subscription of values. Attributes, notifications
- * and transformations are addressed with {@link org.openjdk.jmc.rjmx.subscription.MRI} combining the
- * MBean {@link javax.management.ObjectName} and the actual resource name.
+ * and transformations are addressed with {@link org.openjdk.jmc.rjmx.subscription.MRI} combining
+ * the MBean {@link javax.management.ObjectName} and the actual resource name.
  * <p>
  * See {@link org.openjdk.jmc.rjmx} for an usage example.
  */
 package org.openjdk.jmc.rjmx.subscription;
diff a/application/org.openjdk.jmc.ui.common/pom.xml b/application/org.openjdk.jmc.ui.common/pom.xml
--- a/application/org.openjdk.jmc.ui.common/pom.xml
+++ b/application/org.openjdk.jmc.ui.common/pom.xml
@@ -38,10 +38,15 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.ui.common</artifactId>
 	<packaging>eclipse-plugin</packaging>
+	
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+	
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>org.apache.maven.plugins</groupId>
 				<artifactId>maven-resources-plugin</artifactId>
diff a/application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/idesupport/IIDESupport.java b/application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/idesupport/IIDESupport.java
--- a/application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/idesupport/IIDESupport.java
+++ b/application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/idesupport/IIDESupport.java
@@ -86,12 +86,12 @@
 	 * @return the default file resource in the resource tree for resourcePath
 	 */
 	MCFile createDefaultFileResource(String resourcePath);
 
 	/**
-	 * Returns the default recording folder, e.g. file system directory for RCP version
-	 * or Eclipse project for IDE version.
+	 * Returns the default recording folder, e.g. file system directory for RCP version or Eclipse
+	 * project for IDE version.
 	 *
 	 * @return the default recording folder
 	 */
 	IPath getDefaultRecordingFolder();
 
diff a/application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/security/SecurityManagerFactory.java b/application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/security/SecurityManagerFactory.java
--- a/application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/security/SecurityManagerFactory.java
+++ b/application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/security/SecurityManagerFactory.java
@@ -34,12 +34,12 @@
 
 /**
  * This is the global security manager factory for Mission Control. You can only have one
  * SecurityManager, and it is initialized at start. It can not be changed once initialized. The only
  * way to change security manager is to set the system property
- * org.openjdk.jmc.rjmx.security.manager=&lt;class&gt; before this factory class is instantiated. The
- * class must implement ISecurityManager, and it must have a default constructor.
+ * org.openjdk.jmc.rjmx.security.manager=&lt;class&gt; before this factory class is instantiated.
+ * The class must implement ISecurityManager, and it must have a default constructor.
  */
 public final class SecurityManagerFactory {
 
 	private static ISecurityManager instance;
 
diff a/application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/util/Environment.java b/application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/util/Environment.java
--- a/application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/util/Environment.java
+++ b/application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/util/Environment.java
@@ -42,11 +42,11 @@
 public class Environment {
 	/**
 	 * Known OS types.
 	 */
 	public enum OSType {
-		WINDOWS, MAC, SOLARIS, LINUX, UNKNOWN_UNIX, UNKNOWN;
+	WINDOWS, MAC, SOLARIS, LINUX, UNKNOWN_UNIX, UNKNOWN;
 
 		@Override
 		public String toString() {
 			return name().toLowerCase();
 		}
diff a/application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/util/IDisconnectable.java b/application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/util/IDisconnectable.java
--- a/application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/util/IDisconnectable.java
+++ b/application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/util/IDisconnectable.java
@@ -31,11 +31,11 @@
  * WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 package org.openjdk.jmc.ui.common.util;
 
 /**
- * Interface for objects that can be disconnected. 
+ * Interface for objects that can be disconnected.
  */
 public interface IDisconnectable {
 
 	/**
 	 * Disconnect this object if it is connected.
diff a/application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/util/MCVersion.java b/application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/util/MCVersion.java
--- a/application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/util/MCVersion.java
+++ b/application/org.openjdk.jmc.ui.common/src/main/java/org/openjdk/jmc/ui/common/util/MCVersion.java
@@ -73,11 +73,11 @@
 		QUALIFIER = getVersionProperty(versionProperties, PROPERTY_QUALIFIER, DEFAULT_QUALIFIER);
 		BUILD_ID = getVersionProperty(versionProperties, PROPERTY_BUILD_ID, DEFAULT_BUILD_ID);
 		CHANGE_ID = getVersionProperty(versionProperties, PROPERTY_CHANGE_ID, DEFAULT_CHANGE_ID);
 		DATE = getVersionProperty(versionProperties, PROPERTY_DATE, DEFAULT_DATE);
 	}
-	
+
 	private static String getVersionProperty(Properties versionProperties, String propertyName, String defaultValue) {
 		if (versionProperties != null) {
 			String propertyValue = versionProperties.getProperty(propertyName);
 			if (propertyValue != null && !propertyValue.startsWith("@")) { //$NON-NLS-1$
 				return propertyValue;
diff a/application/org.openjdk.jmc.ui/pom.xml b/application/org.openjdk.jmc.ui/pom.xml
--- a/application/org.openjdk.jmc.ui/pom.xml
+++ b/application/org.openjdk.jmc.ui/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.ui</artifactId>
 	<packaging>eclipse-plugin</packaging>
+		
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/MCPathEditorInput.java b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/MCPathEditorInput.java
--- a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/MCPathEditorInput.java
+++ b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/MCPathEditorInput.java
@@ -52,11 +52,11 @@
 	private final File m_file;
 	private final boolean m_persistable;
 
 	/**
 	 * @deprecated All users of this constructor should switch to the version with a boolean
-	 *    parameter for whether or not it should be persistable.
+	 *             parameter for whether or not it should be persistable.
 	 */
 	@Deprecated
 	public MCPathEditorInput(File file) {
 		this(file, false);
 	}
diff a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/charts/IChartInfoVisitor.java b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/charts/IChartInfoVisitor.java
--- a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/charts/IChartInfoVisitor.java
+++ b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/charts/IChartInfoVisitor.java
@@ -178,12 +178,12 @@
 	void leaveScope();
 
 	/**
 	 * Deliver supplementary information about the hovered rendered item to the Visitor.
 	 * <p>
-	 * To be used in conjunction with an rendered item's {@code infoAt()} to
-	 * deliver supplementary information about the currently hovered object to the Visitor.
+	 * To be used in conjunction with an rendered item's {@code infoAt()} to deliver supplementary
+	 * information about the currently hovered object to the Visitor.
 	 *
 	 * @param data
 	 */
 	void hover(Object data);
 
diff a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/charts/RendererToolkit.java b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/charts/RendererToolkit.java
--- a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/charts/RendererToolkit.java
+++ b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/charts/RendererToolkit.java
@@ -101,12 +101,11 @@
 	}
 
 	private static class CompositeRenderer implements IXDataRenderer {
 
 		private static final Color MISMATCH_CONTENT_BG = new Color(240, 240, 240, 190);
-		private static final String NO_CONTENT_MSG = Messages
-				.getString(Messages.RendererToolkit_NO_CONTENT);
+		private static final String NO_CONTENT_MSG = Messages.getString(Messages.RendererToolkit_NO_CONTENT);
 		private static final String TOO_MUCH_CONTENT_MSG = Messages
 				.getString(Messages.RendererToolkit_TOO_MUCH_CONTENT);
 		private final List<IXDataRenderer> children;
 		private final List<Double> weights;
 		private final String text;
diff a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/charts/SpanRenderer.java b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/charts/SpanRenderer.java
--- a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/charts/SpanRenderer.java
+++ b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/charts/SpanRenderer.java
@@ -50,19 +50,21 @@
 
 	public static <T> IXDataRenderer withBoundaries(ISpanSeries<T> series, IColorProvider<? super T> colorProvider) {
 		return new SpanRenderer<>(series, colorProvider, true, null);
 	}
 
-	public static <T> IXDataRenderer withBoundaries(ISpanSeries<T> series, IColorProvider<? super T> colorProvider, String description) {
+	public static <T> IXDataRenderer withBoundaries(
+		ISpanSeries<T> series, IColorProvider<? super T> colorProvider, String description) {
 		return new SpanRenderer<>(series, colorProvider, true, description);
 	}
 
 	public static <T> IXDataRenderer build(ISpanSeries<T> series, IColorProvider<? super T> colorProvider) {
 		return new SpanRenderer<>(series, colorProvider, false, null);
 	}
 
-	private SpanRenderer(ISpanSeries<T> series, IColorProvider<? super T> colorProvider, boolean markBoundaries, String description) {
+	private SpanRenderer(ISpanSeries<T> series, IColorProvider<? super T> colorProvider, boolean markBoundaries,
+			String description) {
 		this.series = series;
 		this.colorProvider = colorProvider;
 		this.markBoundaries = markBoundaries;
 		this.description = description;
 	}
diff a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/charts/SubdividedQuantityRange.java b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/charts/SubdividedQuantityRange.java
--- a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/charts/SubdividedQuantityRange.java
+++ b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/charts/SubdividedQuantityRange.java
@@ -222,24 +222,24 @@
 	public int getFloorSubdivider(IQuantity value) {
 		return toSubdividerTransform(value.getUnit()).targetIntFloor(value.numberValue());
 	}
 
 	/**
-	 * Get the closest lower subdivider index corresponding to the pixel position
-	 * {@code pixel}. Typically used to get a bucket index.
+	 * Get the closest lower subdivider index corresponding to the pixel position {@code pixel}.
+	 * Typically used to get a bucket index.
 	 *
 	 * @param pixel
 	 * @return
 	 */
 	public int getFloorSubdividerAtPixel(Number pixel) {
 		// FIXME: Add the inverted transform to the cache instead.
 		return subdividerToPixelTransform.invert().targetIntFloor(pixel);
 	}
 
 	/**
-	 * Get the closest subdivider index corresponding to the pixel position {@code pixel}.
-	 * Typically used for snapping to ticks or bucket boundaries.
+	 * Get the closest subdivider index corresponding to the pixel position {@code pixel}. Typically
+	 * used for snapping to ticks or bucket boundaries.
 	 *
 	 * @param pixel
 	 * @return
 	 */
 	public int getClosestSubdividerAtPixel(Number pixel) {
@@ -247,12 +247,12 @@
 		// FIXME: Will not clamp correctly during the long to int conversion.
 		return (int) Math.round(subdividerToPixelTransform.invert().targetNumber(pixel).doubleValue());
 	}
 
 	/**
-	 * Get the pixel position corresponding to {@code value}. Note that if you need to perform
-	 * this on many values, all expressed in the same unit, it is more efficient to use
+	 * Get the pixel position corresponding to {@code value}. Note that if you need to perform this
+	 * on many values, all expressed in the same unit, it is more efficient to use
 	 * {@link #toPixelTransform(IUnit)} once and use that to transform all numerical values using
 	 * {@link IScalarAffineTransform#targetValue(double)} or so.
 	 *
 	 * @param value
 	 * @return
diff a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/dial/DialDevice.java b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/dial/DialDevice.java
--- a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/dial/DialDevice.java
+++ b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/dial/DialDevice.java
@@ -109,11 +109,11 @@
 			if (value <= bg.dialEndValue) {
 				Boolean positive = maxValue < 0 ? Boolean.FALSE : (minValue < 0 ? null : Boolean.TRUE);
 				return new DialDevice(preferredUnit, bg, positive);
 			}
 		}
-		
+
 		/*
 		 * FIXME: Could not find a suitable unit, this shouldn't happen.
 		 * 
 		 * Choosing a hopefully useful dial device, but too large values will be normalized to 1.
 		 * Consider throwing an exception instead.
diff a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/misc/AwtCanvas.java b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/misc/AwtCanvas.java
--- a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/misc/AwtCanvas.java
+++ b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/misc/AwtCanvas.java
@@ -78,13 +78,14 @@
 			graphicsAWT.clearRect(0, 0, width, height);
 			fixDPI(graphicsAWT);
 			return graphicsAWT;
 		}
 	}
-	
+
 	private void setAntiAliasing(Graphics2D ctx) {
-		Boolean antiAliasing = UIPlugin.getDefault().getPreferenceStore().getBoolean(PreferenceConstants.P_ANTI_ALIASING);
+		Boolean antiAliasing = UIPlugin.getDefault().getPreferenceStore()
+				.getBoolean(PreferenceConstants.P_ANTI_ALIASING);
 		if (antiAliasing) {
 			ctx.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
 		} else {
 			ctx.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_OFF);
 		}
diff a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/misc/FilterEditor.java b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/misc/FilterEditor.java
--- a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/misc/FilterEditor.java
+++ b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/misc/FilterEditor.java
@@ -834,10 +834,11 @@
 		}
 
 		protected String getTypeName(String typeID) {
 			return typeID;
 		}
+
 		@Override
 		public Font getFont(Object element) {
 			if (element instanceof LeafNode && ((LeafNode) element).filter instanceof AttributeValue) {
 				AttributeValue<?> value = (AttributeValue<?>) (((LeafNode) element).filter);
 				if (value.getValue() == null) {
diff a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/misc/FormatToolkit.java b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/misc/FormatToolkit.java
--- a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/misc/FormatToolkit.java
+++ b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/misc/FormatToolkit.java
@@ -43,12 +43,11 @@
 import org.eclipse.jface.viewers.ITreeSelection;
 import org.eclipse.jface.viewers.TreePath;
 
 /**
  * A general formatting toolkit.<br>
- * Should be merged with org.openjdk.jmc.common.FormatToolkit when we can use java 8 in
- * common.
+ * Should be merged with org.openjdk.jmc.common.FormatToolkit when we can use java 8 in common.
  */
 public class FormatToolkit {
 
 	private static final String CRLF = "\r\n"; //$NON-NLS-1$
 	private static final String LINE_SEPARATOR = System.getProperty("line.separator"); //$NON-NLS-1$
diff a/application/org.openjdk.jmc.updatesite.ide/pom.xml b/application/org.openjdk.jmc.updatesite.ide/pom.xml
--- a/application/org.openjdk.jmc.updatesite.ide/pom.xml
+++ b/application/org.openjdk.jmc.updatesite.ide/pom.xml
@@ -38,10 +38,15 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.updatesite.ide</artifactId>
 	<packaging>eclipse-repository</packaging>
+	
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>org.eclipse.tycho</groupId>
 				<artifactId>tycho-p2-repository-plugin</artifactId>
diff a/application/org.openjdk.jmc.updatesite.rcp/pom.xml b/application/org.openjdk.jmc.updatesite.rcp/pom.xml
--- a/application/org.openjdk.jmc.updatesite.rcp/pom.xml
+++ b/application/org.openjdk.jmc.updatesite.rcp/pom.xml
@@ -38,10 +38,15 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.updatesite.rcp</artifactId>
 	<packaging>eclipse-repository</packaging>
+	
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>org.eclipse.tycho</groupId>
 				<artifactId>tycho-p2-repository-plugin</artifactId>
diff a/application/pom.xml b/application/pom.xml
--- a/application/pom.xml
+++ b/application/pom.xml
@@ -38,10 +38,19 @@
 		<artifactId>missioncontrol</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>missioncontrol.application</artifactId>
 	<packaging>pom</packaging>
+
+	<properties>
+		<maven.compiler.source>1.8</maven.compiler.source>
+		<maven.compiler.target>1.8</maven.compiler.target>
+		<spotless.config.path>${basedir}/../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+		<jfr.tests/>
+		<jfr.vmargs>-XX:+UnlockCommercialFeatures -XX:+FlightRecorder</jfr.vmargs>
+	</properties>
+
 	<modules>
 		<module>org.openjdk.jmc.alert</module>
 		<module>org.openjdk.jmc.attach</module>
 		<module>org.openjdk.jmc.browser</module>
 		<module>org.openjdk.jmc.browser.attach</module>
@@ -129,16 +138,10 @@
 			<modules>
 				<module>uitests</module>
 			</modules>
 		</profile>
 	</profiles>
-	<properties>
-		<maven.compiler.source>1.8</maven.compiler.source>
-		<maven.compiler.target>1.8</maven.compiler.target>
-		<jfr.tests/>
-		<jfr.vmargs>-XX:+UnlockCommercialFeatures -XX:+FlightRecorder</jfr.vmargs>
-	</properties>
 	<dependencies>
 		<dependency>
 			<groupId>org.openjdk.jmc</groupId>
 			<artifactId>common</artifactId>
 			<version>8.0.0-SNAPSHOT</version>
diff a/application/tests/org.openjdk.jmc.flightrecorder.configuration.test/pom.xml b/application/tests/org.openjdk.jmc.flightrecorder.configuration.test/pom.xml
--- a/application/tests/org.openjdk.jmc.flightrecorder.configuration.test/pom.xml
+++ b/application/tests/org.openjdk.jmc.flightrecorder.configuration.test/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.tests</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.flightrecorder.configuration.test</artifactId>
 	<packaging>eclipse-test-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/tests/org.openjdk.jmc.flightrecorder.controlpanel.ui.configuration.test/pom.xml b/application/tests/org.openjdk.jmc.flightrecorder.controlpanel.ui.configuration.test/pom.xml
--- a/application/tests/org.openjdk.jmc.flightrecorder.controlpanel.ui.configuration.test/pom.xml
+++ b/application/tests/org.openjdk.jmc.flightrecorder.controlpanel.ui.configuration.test/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.tests</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.flightrecorder.controlpanel.ui.configuration.test</artifactId>
 	<packaging>eclipse-test-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/tests/org.openjdk.jmc.flightrecorder.controlpanel.ui.test/pom.xml b/application/tests/org.openjdk.jmc.flightrecorder.controlpanel.ui.test/pom.xml
--- a/application/tests/org.openjdk.jmc.flightrecorder.controlpanel.ui.test/pom.xml
+++ b/application/tests/org.openjdk.jmc.flightrecorder.controlpanel.ui.test/pom.xml
@@ -38,10 +38,15 @@
 		<artifactId>missioncontrol.application.tests</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.flightrecorder.controlpanel.ui.test</artifactId>
 	<packaging>eclipse-test-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>org.eclipse.tycho</groupId>
 				<artifactId>tycho-surefire-plugin</artifactId>
diff a/application/tests/org.openjdk.jmc.flightrecorder.ext.jfx.test/pom.xml b/application/tests/org.openjdk.jmc.flightrecorder.ext.jfx.test/pom.xml
--- a/application/tests/org.openjdk.jmc.flightrecorder.ext.jfx.test/pom.xml
+++ b/application/tests/org.openjdk.jmc.flightrecorder.ext.jfx.test/pom.xml
@@ -37,7 +37,11 @@
 		<groupId>org.openjdk.jmc</groupId>
 		<artifactId>missioncontrol.application.tests</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.flightrecorder.ext.jfx.test</artifactId>
-    <packaging>eclipse-test-plugin</packaging>
+	<packaging>eclipse-test-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/tests/org.openjdk.jmc.flightrecorder.ext.jfx.test/src/test/java/org/openjdk/jmc/flightrecorder/ext/jfx/test/JfxPulseDurationRuleTest.java b/application/tests/org.openjdk.jmc.flightrecorder.ext.jfx.test/src/test/java/org/openjdk/jmc/flightrecorder/ext/jfx/test/JfxPulseDurationRuleTest.java
--- a/application/tests/org.openjdk.jmc.flightrecorder.ext.jfx.test/src/test/java/org/openjdk/jmc/flightrecorder/ext/jfx/test/JfxPulseDurationRuleTest.java
+++ b/application/tests/org.openjdk.jmc.flightrecorder.ext.jfx.test/src/test/java/org/openjdk/jmc/flightrecorder/ext/jfx/test/JfxPulseDurationRuleTest.java
@@ -52,11 +52,11 @@
 import org.openjdk.jmc.flightrecorder.ext.jfx.JfxPulseDurationRule;
 import org.openjdk.jmc.flightrecorder.ext.jfx.Messages;
 import org.openjdk.jmc.flightrecorder.rules.Result;
 
 public class JfxPulseDurationRuleTest {
-	
+
 	private static final String RECORDINGS_DIR = "jfr";
 	private static final String JFR_FILENAME = "pulseduration.jfr";
 	private static final IQuantity TARGET_HZ = UnitLookup.HERTZ.quantity(60);
 	private static final IQuantity LONG_PHASES_PERCENT = UnitLookup.PERCENT_UNITY.quantity(0.08106355382619974);
 	private static final IQuantity TARGET_PHASE_TIME = UnitLookup.MILLISECOND.quantity(16.666666666666668);
@@ -68,15 +68,15 @@
 	@Test
 	public void testPulseDurationRule() throws Exception {
 		// Load a saved recording containing javafx.PulsePhase events
 		IOResource jfr = TestToolkit.getNamedResource(JfxPulseDurationRuleTest.class, RECORDINGS_DIR, JFR_FILENAME);
 		IItemCollection events = JfrLoaderToolkit.loadEvents(jfr.open());
-		
+
 		// Execute the rule on our test recording
 		JfxPulseDurationRule rule = new JfxPulseDurationRule();
 		RunnableFuture<Result> future = rule.evaluate(events, new IPreferenceValueProvider() {
-			
+
 			@Override
 			@SuppressWarnings("unchecked")
 			public <T> T getPreferenceValue(TypedPreference<T> preference) {
 				// Use hard-coded 60Hz instead of relying on default, which could change
 				if (JfxPulseDurationRule.CONFIG_TARGET_FRAME_RATE.equals(preference)) {
@@ -85,14 +85,15 @@
 				return DEFAULT_VALUES.getPreferenceValue(preference);
 			}
 		});
 		future.run();
 		Result result = future.get();
-		
+
 		// Check that score and warnings match expected values
 		assertEquals(SCORE, result.getScore(), DELTA);
 		assertEquals(MessageFormat.format(WARNING_SHORT, LONG_PHASES_PERCENT.displayUsing(IDisplayable.AUTO),
 				TARGET_PHASE_TIME.displayUsing(IDisplayable.AUTO)), result.getShortDescription());
-		assertEquals(MessageFormat.format(WARNING_LONG, TARGET_HZ.displayUsing(IDisplayable.AUTO)), result.getLongDescription());
+		assertEquals(MessageFormat.format(WARNING_LONG, TARGET_HZ.displayUsing(IDisplayable.AUTO)),
+				result.getLongDescription());
 	}
 
 }
diff a/application/tests/org.openjdk.jmc.flightrecorder.ui.test/pom.xml b/application/tests/org.openjdk.jmc.flightrecorder.ui.test/pom.xml
--- a/application/tests/org.openjdk.jmc.flightrecorder.ui.test/pom.xml
+++ b/application/tests/org.openjdk.jmc.flightrecorder.ui.test/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.tests</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.flightrecorder.ui.test</artifactId>
 	<packaging>eclipse-test-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/tests/org.openjdk.jmc.greychart.test/pom.xml b/application/tests/org.openjdk.jmc.greychart.test/pom.xml
--- a/application/tests/org.openjdk.jmc.greychart.test/pom.xml
+++ b/application/tests/org.openjdk.jmc.greychart.test/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.tests</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.greychart.test</artifactId>
 	<packaging>eclipse-test-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/tests/org.openjdk.jmc.greychart.test/src/test/java/org/openjdk/jmc/greychart/impl/SampleBufferTest.java b/application/tests/org.openjdk.jmc.greychart.test/src/test/java/org/openjdk/jmc/greychart/impl/SampleBufferTest.java
--- a/application/tests/org.openjdk.jmc.greychart.test/src/test/java/org/openjdk/jmc/greychart/impl/SampleBufferTest.java
+++ b/application/tests/org.openjdk.jmc.greychart.test/src/test/java/org/openjdk/jmc/greychart/impl/SampleBufferTest.java
@@ -84,11 +84,11 @@
 		buffer.addDataPoint(5.0 / 6.0, 80);
 		buffer.fixSamples();
 		Assert.assertEquals(2, countValids(buffer));
 		Assert.assertEquals(42.5, buffer.getSamples()[0].y, 0);
 		double dy = buffer.getSamples()[2].y - buffer.getSamples()[0].y;
-		int dx =  buffer.getSamples()[2].x - buffer.getSamples()[0].x;
+		int dx = buffer.getSamples()[2].x - buffer.getSamples()[0].x;
 		double midY = ((dy / dx) * (dx / 2)) + buffer.getSamples()[0].y;
 		Assert.assertEquals(60, Math.round(midY), 0);
 		Assert.assertEquals(77.5, buffer.getSamples()[2].y, 0);
 	}
 
diff a/application/tests/org.openjdk.jmc.ide.launch.test/pom.xml b/application/tests/org.openjdk.jmc.ide.launch.test/pom.xml
--- a/application/tests/org.openjdk.jmc.ide.launch.test/pom.xml
+++ b/application/tests/org.openjdk.jmc.ide.launch.test/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.tests</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.ide.launch.test</artifactId>
 	<packaging>eclipse-test-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/tests/org.openjdk.jmc.jdp.test/pom.xml b/application/tests/org.openjdk.jmc.jdp.test/pom.xml
--- a/application/tests/org.openjdk.jmc.jdp.test/pom.xml
+++ b/application/tests/org.openjdk.jmc.jdp.test/pom.xml
@@ -38,10 +38,15 @@
 		<artifactId>missioncontrol.application.tests</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.jdp.test</artifactId>
 	<packaging>eclipse-test-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>org.eclipse.tycho</groupId>
 				<artifactId>tycho-surefire-plugin</artifactId>
diff a/application/tests/org.openjdk.jmc.joverflow.test/pom.xml b/application/tests/org.openjdk.jmc.joverflow.test/pom.xml
--- a/application/tests/org.openjdk.jmc.joverflow.test/pom.xml
+++ b/application/tests/org.openjdk.jmc.joverflow.test/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.tests</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.joverflow.test</artifactId>
 	<packaging>eclipse-test-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/tests/org.openjdk.jmc.rjmx.services.jfr.test/pom.xml b/application/tests/org.openjdk.jmc.rjmx.services.jfr.test/pom.xml
--- a/application/tests/org.openjdk.jmc.rjmx.services.jfr.test/pom.xml
+++ b/application/tests/org.openjdk.jmc.rjmx.services.jfr.test/pom.xml
@@ -38,19 +38,24 @@
 		<artifactId>missioncontrol.application.tests</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.rjmx.services.jfr.test</artifactId>
 	<packaging>eclipse-test-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>org.eclipse.tycho</groupId>
 				<artifactId>tycho-surefire-plugin</artifactId>
 				<version>${tycho.version}</version>
 				<configuration>
 					<argLine>-Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=localhost -Djmc.test.rjmx.serviceURL=service:jmx:rmi:///jndi/rmi://localhost:9999/jmxrmi ${jfr.vmargs}</argLine>
 					<failIfNoTests>false</failIfNoTests>
-                                </configuration>
+				</configuration>
 			</plugin>
 		</plugins>
 	</build>
 </project>
diff a/application/tests/org.openjdk.jmc.rjmx.services.jfr.test/src/test/java/org/openjdk/jmc/rjmx/services/jfr/test/JfrTestSuite.java b/application/tests/org.openjdk.jmc.rjmx.services.jfr.test/src/test/java/org/openjdk/jmc/rjmx/services/jfr/test/JfrTestSuite.java
--- a/application/tests/org.openjdk.jmc.rjmx.services.jfr.test/src/test/java/org/openjdk/jmc/rjmx/services/jfr/test/JfrTestSuite.java
+++ b/application/tests/org.openjdk.jmc.rjmx.services.jfr.test/src/test/java/org/openjdk/jmc/rjmx/services/jfr/test/JfrTestSuite.java
@@ -39,8 +39,8 @@
 /**
  * This class holds all JFR tests. Just add your test classes in the #suite method...
  */
 @RunWith(Suite.class)
 @SuiteClasses({EventMetadataTest.class, EventTemplateTest.class, JfrControlTest.class, RecordingOptionsTest.class,
-		OnlineEventOptionsTest.class })
+		OnlineEventOptionsTest.class})
 public class JfrTestSuite {
 }
diff a/application/tests/org.openjdk.jmc.rjmx.test/pom.xml b/application/tests/org.openjdk.jmc.rjmx.test/pom.xml
--- a/application/tests/org.openjdk.jmc.rjmx.test/pom.xml
+++ b/application/tests/org.openjdk.jmc.rjmx.test/pom.xml
@@ -38,10 +38,15 @@
 		<artifactId>missioncontrol.application.tests</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.rjmx.test</artifactId>
 	<packaging>eclipse-test-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>org.eclipse.tycho</groupId>
 				<artifactId>tycho-surefire-plugin</artifactId>
diff a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/AllRJMXTests.java b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/AllRJMXTests.java
--- a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/AllRJMXTests.java
+++ b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/AllRJMXTests.java
@@ -48,10 +48,9 @@
  * launchers.
  */
 @RunWith(Suite.class)
 @SuiteClasses({RJMXTestSuite.class, InternalTestSuite.class, ServicesTestSuite.class, SubscriptionTestSuite.class,
 		SubscriptionInternalTestSuite.class, SyntheticTestSuite.class, NotificationTestSuite.class,
-		JVMSupportToolkitTest.class
-})
+		JVMSupportToolkitTest.class})
 public class AllRJMXTests {
 
 }
diff a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/BasicCommunicationTest.java b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/BasicCommunicationTest.java
--- a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/BasicCommunicationTest.java
+++ b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/BasicCommunicationTest.java
@@ -75,12 +75,11 @@
 	}
 
 	@Test
 	public void testIConnectionHandle() throws Exception {
 		IConnectionHandle handle = getDefaultServer().connect("Test");
-		MRI descriptor = new MRI(Type.ATTRIBUTE, "java.lang:type=Threading",
-				"ThreadCount");
+		MRI descriptor = new MRI(Type.ATTRIBUTE, "java.lang:type=Threading", "ThreadCount");
 		MBeanServerConnection connection = handle.getServiceOrThrow(MBeanServerConnection.class);
 		assertBetween(1L, 1000L,
 				((Number) connection.getAttribute(descriptor.getObjectName(), descriptor.getDataPath())).longValue());
 		handle.close();
 	}
@@ -100,12 +99,11 @@
 		ConnectionDescriptorBuilder builder = new ConnectionDescriptorBuilder();
 		IConnectionDescriptor descriptor = builder.hostName("localhost").port(0).build();
 		IConnectionHandle handle = IServerHandle.create(descriptor).connect("Test");
 
 		ISubscriptionService service = handle.getServiceOrThrow(ISubscriptionService.class);
-		MRI attribute = new MRI(Type.ATTRIBUTE, "java.lang:type=Threading",
-				"ThreadCount");
+		MRI attribute = new MRI(Type.ATTRIBUTE, "java.lang:type=Threading", "ThreadCount");
 		service.addMRIValueListener(attribute, new IMRIValueListener() {
 			@Override
 			public void valueChanged(MRIValueEvent event) {
 				System.out.println(event.getValue());
 			}
diff a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/DefaultServicesTest.java b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/DefaultServicesTest.java
--- a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/DefaultServicesTest.java
+++ b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/DefaultServicesTest.java
@@ -78,9 +78,9 @@
 //		assertLessThan("Server time approximation off by more than five seconds", 5000L, Math.abs(diff));
 //		System.out.println("DefaultServicesTest.testMBeanHelperService(): Server time approximation difference = "
 //				+ Math.abs(diff) + " ms");
 
 		// Should at least contain the java.lang mbeans. Just testing for the Threading one.
-		assertTrue("Could not find the Threading MBean!", helper.getMBeanNames().contains(
-				new ObjectName("java.lang:type=Threading")));
+		assertTrue("Could not find the Threading MBean!",
+				helper.getMBeanNames().contains(new ObjectName("java.lang:type=Threading")));
 	}
 }
diff a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/internal/RJMXConnectionTest.java b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/internal/RJMXConnectionTest.java
--- a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/internal/RJMXConnectionTest.java
+++ b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/internal/RJMXConnectionTest.java
@@ -65,13 +65,12 @@
  */
 @SuppressWarnings("nls")
 public class RJMXConnectionTest extends RjmxTestCase {
 	// The MBEANS vital to console functionality.
 	public final static String[] MBEAN_NAMES = {"java.lang:type=OperatingSystem", "java.lang:type=ClassLoading",
-			"java.lang:type=Threading", "java.lang:type=Compilation", "java.lang:type=Memory",
-			"java.lang:type=Runtime", "java.lang:type=MemoryPool,*", "java.lang:type=GarbageCollector,*",
-			"java.lang:type=MemoryManager,*"};
+			"java.lang:type=Threading", "java.lang:type=Compilation", "java.lang:type=Memory", "java.lang:type=Runtime",
+			"java.lang:type=MemoryPool,*", "java.lang:type=GarbageCollector,*", "java.lang:type=MemoryManager,*"};
 
 	public final static String[] MBEAN_CLASS_NAMES = {"sun.management.RuntimeImpl"};
 
 	public static final int MIN_CPUS = 1;
 	public static final int MAX_CPUS = 1024;
@@ -180,12 +179,11 @@
 			MBeanInfo info = (MBeanInfo) iter.next();
 			infos.put(info.getClassName(), info);
 		}
 		// No longer check all the class names
 		for (String element : MBEAN_CLASS_NAMES) {
-			assertTrue("Returned infos did not contain MBean class name: " + element, infos
-					.containsKey(element));
+			assertTrue("Returned infos did not contain MBean class name: " + element, infos.containsKey(element));
 		}
 
 		MBeanInfo loggingInfo = infos.get(MBEAN_CLASS_NAMES[0]);
 		assertNotNull("MBeanInfo was null for " + MBEAN_CLASS_NAMES[0], loggingInfo);
 		MBeanAttributeInfo[] attrInfo = loggingInfo.getAttributes();
diff a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/internal/TabularDataBeanTestMBean.java b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/internal/TabularDataBeanTestMBean.java
--- a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/internal/TabularDataBeanTestMBean.java
+++ b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/internal/TabularDataBeanTestMBean.java
@@ -59,12 +59,11 @@
 
 	public TabularDataBeanTestMBean() {
 		CompositeType simpleCompositeType;
 		try {
 			simpleCompositeType = new CompositeType("simpleCompositeType", "compdescription",
-					new String[] {"djur", "bil", "apa", "båt"},
-					new String[] {"ett djur", "en bil", "en apa", "en båt"},
+					new String[] {"djur", "bil", "apa", "båt"}, new String[] {"ett djur", "en bil", "en apa", "en båt"},
 					new OpenType[] {SimpleType.STRING, SimpleType.STRING, SimpleType.STRING, SimpleType.STRING,});
 
 			TabularType simpleTabularType = new TabularType("simpleTabularTypeName", "tabdescription",
 					simpleCompositeType, new String[] {"djur", "bil", "apa", "båt"});
 
@@ -89,12 +88,11 @@
 					"complex composite type desc", compositeKeys, compositeDescriptions, compositeContentsTypes);
 			TabularType complexTabularType = new TabularType("ComplexTabularTypeName", "complex tabular type",
 					complexCompositeType, compositeKeys);
 
 			CompositeData simpleCompositeData = new CompositeDataSupport(simpleCompositeType,
-					new String[] {"djur", "bil", "apa", "båt"},
-					new String[] {"häst", "corvette", "lemur", "nautilus"});
+					new String[] {"djur", "bil", "apa", "båt"}, new String[] {"häst", "corvette", "lemur", "nautilus"});
 			TabularDataSupport simpleTabularData = new TabularDataSupport(simpleTabularType);
 			simpleTabularData.put(simpleCompositeData);
 			/*
 			 * simpleTabularData.put(simpleCompositeData);
 			 * simpleTabularData.put(simpleCompositeData);
diff a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/subscription/AttributeValueTest.java b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/subscription/AttributeValueTest.java
--- a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/subscription/AttributeValueTest.java
+++ b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/subscription/AttributeValueTest.java
@@ -112,12 +112,10 @@
 
 	private static List<MRI> createCommonAttributesList(IConnectionHandle connectionHandle) {
 		List<MRI> fetchList = new ArrayList<>();
 		fetchList.add(new MRI(Type.ATTRIBUTE, "java.lang:type=OperatingSystem", "SystemCpuLoad"));
 		fetchList.add(new MRI(Type.ATTRIBUTE, "java.lang:type=OperatingSystem", "ProcessCpuLoad"));
-		fetchList.add(new MRI(Type.ATTRIBUTE, "java.lang:type=OperatingSystem",
-				"TotalPhysicalMemorySize"));
-		fetchList.add(new MRI(Type.ATTRIBUTE, "java.lang:type=OperatingSystem",
-				"UsedPhysicalMemorySize"));
+		fetchList.add(new MRI(Type.ATTRIBUTE, "java.lang:type=OperatingSystem", "TotalPhysicalMemorySize"));
+		fetchList.add(new MRI(Type.ATTRIBUTE, "java.lang:type=OperatingSystem", "UsedPhysicalMemorySize"));
 		return fetchList;
 	}
 }
diff a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/subscription/CompositeDataSubscriptionTest.java b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/subscription/CompositeDataSubscriptionTest.java
--- a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/subscription/CompositeDataSubscriptionTest.java
+++ b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/subscription/CompositeDataSubscriptionTest.java
@@ -64,12 +64,11 @@
 
 	@Test
 	public void testCompositeDataSubscription() {
 		try {
 			// Starting up a subscription on a one shot attribute.
-			MRI attributeDescriptor = new MRI(Type.ATTRIBUTE, "java.lang:type=Memory",
-					"HeapMemoryUsage/used");
+			MRI attributeDescriptor = new MRI(Type.ATTRIBUTE, "java.lang:type=Memory", "HeapMemoryUsage/used");
 			getAttributeSubscriptionService().addMRIValueListener(attributeDescriptor, this);
 			IMRISubscription subscription = getAttributeSubscriptionService().getMRISubscription(attributeDescriptor);
 
 			assertNotNull(subscription);
 
diff a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/subscription/MRIMetadataServiceTest.java b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/subscription/MRIMetadataServiceTest.java
--- a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/subscription/MRIMetadataServiceTest.java
+++ b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/subscription/MRIMetadataServiceTest.java
@@ -65,12 +65,12 @@
 	@Test
 	public void testGetAttributeInfo() throws Exception {
 		@SuppressWarnings("nls")
 		IConnectionHandle handle = IServerHandle.create(LocalRJMXTestToolkit.createDefaultDescriptor()).connect("Test");
 		IMRIMetadataService service = LocalRJMXTestToolkit.getInfoService(handle);
-		IMRIMetadata info = service.getMetadata(new MRI(Type.ATTRIBUTE, "java.lang:type=OperatingSystem",
-				"SystemCpuLoad"));
+		IMRIMetadata info = service
+				.getMetadata(new MRI(Type.ATTRIBUTE, "java.lang:type=OperatingSystem", "SystemCpuLoad"));
 		assertNotNull(info);
 		assertNotNull(info.getMRI());
 		assertNotNull(info.getValueType());
 		assertNotNull(info.getDescription());
 		handle.close();
@@ -78,12 +78,12 @@
 
 	@Test
 	public void testGetMetadata() throws Exception {
 		IConnectionHandle handle = IServerHandle.create(LocalRJMXTestToolkit.createDefaultDescriptor()).connect("Test");
 		IMRIMetadataService service = LocalRJMXTestToolkit.getInfoService(handle);
-		IMRIMetadata info = service.getMetadata(new MRI(Type.ATTRIBUTE, "java.lang:type=OperatingSystem",
-				"SystemCpuLoad"));
+		IMRIMetadata info = service
+				.getMetadata(new MRI(Type.ATTRIBUTE, "java.lang:type=OperatingSystem", "SystemCpuLoad"));
 		assertNotNull(info);
 
 		String description = info.getDescription();
 		assertNotNull(description);
 		assertTrue(description.length() > 12);
@@ -123,14 +123,14 @@
 		IMRIMetadataService service = LocalRJMXTestToolkit.getInfoService(handle);
 		evaluateAttributeType(service, new MRI(Type.ATTRIBUTE, "java.lang:type=Memory", "HeapMemoryUsage"),
 				MemoryUsage.class);
 		evaluateAttributeType(service, new MRI(Type.ATTRIBUTE, "java.lang:type=Memory", "HeapMemoryUsage/committed"),
 				Long.TYPE);
-		evaluateAttributeType(service, new MRI(Type.ATTRIBUTE, "JMImplementation:type=MBeanServerDelegate",
-				"ImplementationVendor"), String.class);
-		evaluateAttributeType(service, new MRI(Type.ATTRIBUTE, "java.lang:type=Runtime", "InputArguments"),
-				List.class);
+		evaluateAttributeType(service,
+				new MRI(Type.ATTRIBUTE, "JMImplementation:type=MBeanServerDelegate", "ImplementationVendor"),
+				String.class);
+		evaluateAttributeType(service, new MRI(Type.ATTRIBUTE, "java.lang:type=Runtime", "InputArguments"), List.class);
 		evaluateAttributeType(service, new MRI(Type.ATTRIBUTE, "java.lang:type=Runtime", "SystemProperties"),
 				Map.class);
 		handle.close();
 	}
 
@@ -160,12 +160,12 @@
 
 	@Test
 	public void testSetMetadata() throws Exception {
 		IConnectionHandle handle = IServerHandle.create(LocalRJMXTestToolkit.createDefaultDescriptor()).connect("Test");
 		IMRIMetadataService service = LocalRJMXTestToolkit.getInfoService(handle);
-		IMRIMetadata info = service.getMetadata(new MRI(Type.ATTRIBUTE, "java.lang:type=OperatingSystem",
-				"SystemCpuLoad"));
+		IMRIMetadata info = service
+				.getMetadata(new MRI(Type.ATTRIBUTE, "java.lang:type=OperatingSystem", "SystemCpuLoad"));
 		assertNotNull(info);
 		service.setMetadata(info.getMRI(), "testgegga", "Oh, testgegga!");
 		String testGegga = (String) service.getMetadata(info.getMRI(), "testgegga");
 		assertEquals("Oh, testgegga!", testGegga);
 		handle.close();
@@ -192,12 +192,11 @@
 
 	@Test
 	public void testOverrideDefultMetadata() throws Exception {
 		IConnectionHandle handle = IServerHandle.create(LocalRJMXTestToolkit.createDefaultDescriptor()).connect("Test");
 		IMRIMetadataService service = LocalRJMXTestToolkit.getInfoService(handle);
-		MRI mri = new MRI(Type.ATTRIBUTE, "java.lang:type=Memory",
-				"HeapMemoryUsage/committed");
+		MRI mri = new MRI(Type.ATTRIBUTE, "java.lang:type=Memory", "HeapMemoryUsage/committed");
 		IMRIMetadata info = service.getMetadata(mri);
 		String description = info.getDescription();
 		String newDescription = "[ja]" + description;
 		service.setMetadata(mri, IMRIMetadataProvider.KEY_DESCRIPTION, newDescription);
 		assertEquals("Description not updated", newDescription, info.getDescription());
diff a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/subscription/internal/ConsoleAttributeInfoManagerTest.java b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/subscription/internal/ConsoleAttributeInfoManagerTest.java
--- a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/subscription/internal/ConsoleAttributeInfoManagerTest.java
+++ b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/subscription/internal/ConsoleAttributeInfoManagerTest.java
@@ -55,21 +55,20 @@
 public class ConsoleAttributeInfoManagerTest extends RjmxTestCase {
 	IMRIMetadataService m_manager;
 
 	@Test
 	public void testGetAttributeInfo() {
-		MRI descriptor = new MRI(Type.ATTRIBUTE, "java.lang:type=OperatingSystem",
-				"AvailableProcessors");
+		MRI descriptor = new MRI(Type.ATTRIBUTE, "java.lang:type=OperatingSystem", "AvailableProcessors");
 		IMRIMetadata info = m_manager.getMetadata(descriptor);
 		assertNotNull(info);
 
 		assertEquals(5000,
 				((IIntervalUpdatePolicy) UpdatePolicyToolkit.getUpdatePolicy(m_connectionHandle, info.getMRI()))
 						.getIntervalTime());
 		assertMin("Description shorter than expected.", 10, info.getDescription().length());
-		assertMin("Display name shorter than expected.", 4, MRIMetadataToolkit.getDisplayName(m_connectionHandle,
-				info.getMRI()).length());
+		assertMin("Display name shorter than expected.", 4,
+				MRIMetadataToolkit.getDisplayName(m_connectionHandle, info.getMRI()).length());
 		assertTrue(info.getMRI().getParentMRIs().length == 0);
 	}
 
 	@Test
 	public void testCompositeIsChild() {
diff a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/synthetic/SyntheticNotificationTest.java b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/synthetic/SyntheticNotificationTest.java
--- a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/synthetic/SyntheticNotificationTest.java
+++ b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/synthetic/SyntheticNotificationTest.java
@@ -135,12 +135,12 @@
 		MBeanInfo info = connection.getMBeanInfo(new ObjectName("java.lang:type=Memory"));
 		assertTrue(info.getNotifications().length > 0);
 		for (MBeanNotificationInfo notificationInfo : info.getNotifications()) {
 			if (notificationInfo.getName().equals("java.management.memory.collection.threshold.exceeded")) {
 				assertTrue("Failed to shadow description", notificationInfo.getDescription().contains("shadow"));
-				assertTrue("Got the wrong type:" + notificationInfo.getNotifTypes()[0], "int".equals(notificationInfo
-						.getNotifTypes()[0]));
+				assertTrue("Got the wrong type:" + notificationInfo.getNotifTypes()[0],
+						"int".equals(notificationInfo.getNotifTypes()[0]));
 			} else {
 				assertTrue("Should NOT contain shadow!", !notificationInfo.getDescription().contains("shadow"));
 				assertTrue("Should not be int!", !"int".equals(notificationInfo.getNotifTypes()[0]));
 			}
 		}
diff a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/triggers/NotificationTriggerAndRuleTest.java b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/triggers/NotificationTriggerAndRuleTest.java
--- a/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/triggers/NotificationTriggerAndRuleTest.java
+++ b/application/tests/org.openjdk.jmc.rjmx.test/src/test/java/org/openjdk/jmc/rjmx/test/triggers/NotificationTriggerAndRuleTest.java
@@ -172,12 +172,11 @@
 	 * @return the new rule
 	 * @throws JMException
 	 * @throws IOException
 	 */
 	protected TriggerRule createRule() throws Exception {
-		MRI uptimeDescriptor = new MRI(Type.ATTRIBUTE, "java.lang:type=Runtime",
-				"Uptime");
+		MRI uptimeDescriptor = new MRI(Type.ATTRIBUTE, "java.lang:type=Runtime", "Uptime");
 		long uptime = ConnectionToolkit.getRuntimeBean(getMBeanServerConnection()).getUptime();
 		IMRIMetadata metadata = getMRIMetadataService().getMetadata(uptimeDescriptor);
 		IUnit unit = UnitLookup.getUnitOrDefault(metadata.getUnitString());
 		TriggerRule rule = createTestNotificationRule(uptimeDescriptor);
 		ValueEvaluatorNumberMax eval = new ValueEvaluatorNumberMax();
diff a/application/tests/org.openjdk.jmc.ui.common.test/pom.xml b/application/tests/org.openjdk.jmc.ui.common.test/pom.xml
--- a/application/tests/org.openjdk.jmc.ui.common.test/pom.xml
+++ b/application/tests/org.openjdk.jmc.ui.common.test/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.tests</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.ui.common.test</artifactId>
 	<packaging>eclipse-test-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/tests/org.openjdk.jmc.ui.common.test/src/test/java/org/openjdk/jmc/ui/common/jvm/JVMCommandLineToolkitTest.java b/application/tests/org.openjdk.jmc.ui.common.test/src/test/java/org/openjdk/jmc/ui/common/jvm/JVMCommandLineToolkitTest.java
--- a/application/tests/org.openjdk.jmc.ui.common.test/src/test/java/org/openjdk/jmc/ui/common/jvm/JVMCommandLineToolkitTest.java
+++ b/application/tests/org.openjdk.jmc.ui.common.test/src/test/java/org/openjdk/jmc/ui/common/jvm/JVMCommandLineToolkitTest.java
@@ -56,12 +56,12 @@
 				JVMCommandLineToolkit.getMainClassOrJar("org.openjdk.jmc.test.Runner1"));
 	}
 
 	@Test
 	public void testJarAndMoreFlags() {
-		assertEquals("/path1/path2/mc.jar", JVMCommandLineToolkit
-				.getMainClassOrJar("/path1/path2/mc.jar -consoleLog -data /work/path3"));
+		assertEquals("/path1/path2/mc.jar",
+				JVMCommandLineToolkit.getMainClassOrJar("/path1/path2/mc.jar -consoleLog -data /work/path3"));
 	}
 
 	@Test
 	public void testSlashClassAndFlags() {
 		assertEquals("org/netbeans/Main", JVMCommandLineToolkit.getMainClassOrJar("org/netbeans/Main --branding nb"));
@@ -103,21 +103,19 @@
 				.getJavaCommandLine("-cp application.jar -Darg1=foo org.openjdk.jmc.test.Runner3 arg"));
 	}
 
 	@Test
 	public void testJarFlag() {
-		assertEquals("C:/path1/path2/mc.jar -consoleLog -data C:/path3/path4",
-				JVMCommandLineToolkit.getJavaCommandLine(
-						"-jar C:/path1/path2/mc.jar -consoleLog -data C:/path3/path4"));
+		assertEquals("C:/path1/path2/mc.jar -consoleLog -data C:/path3/path4", JVMCommandLineToolkit
+				.getJavaCommandLine("-jar C:/path1/path2/mc.jar -consoleLog -data C:/path3/path4"));
 	}
 
 	@Test
 	public void testClassPathJarAndFlags() {
 		// not really a valid cmdline
-		assertEquals("C:/path1/path2/mc.jar -consoleLog -data C:/path3/path4",
-				JVMCommandLineToolkit.getJavaCommandLine(
-						"-classpath application.jar -jar C:/path1/path2/mc.jar -consoleLog -data C:/path3/path4"));
+		assertEquals("C:/path1/path2/mc.jar -consoleLog -data C:/path3/path4", JVMCommandLineToolkit.getJavaCommandLine(
+				"-classpath application.jar -jar C:/path1/path2/mc.jar -consoleLog -data C:/path3/path4"));
 	}
 
 	@Test
 	public void testEmptyString2() {
 		assertEquals("", JVMCommandLineToolkit.getJavaCommandLine(""));
diff a/application/tests/org.openjdk.jmc.ui.test/pom.xml b/application/tests/org.openjdk.jmc.ui.test/pom.xml
--- a/application/tests/org.openjdk.jmc.ui.test/pom.xml
+++ b/application/tests/org.openjdk.jmc.ui.test/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>missioncontrol.application.tests</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.ui.test</artifactId>
 	<packaging>eclipse-test-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/application/tests/pom.xml b/application/tests/pom.xml
--- a/application/tests/pom.xml
+++ b/application/tests/pom.xml
@@ -57,10 +57,11 @@
 	</modules>
 	<properties>
 		<test.includes.default>**/Test*.java,**/*Test.java,**/*TestCase.java</test.includes.default>
 		<test.excludes.default>**/*$*</test.excludes.default>
 		<fail.if.no.tests>true</fail.if.no.tests>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
 	</properties>
 	<profiles>
 		<profile>
 			<id>TestIncludesDefined</id>
 			<activation>
diff a/application/uitests/org.openjdk.jmc.browser.uitest/pom.xml b/application/uitests/org.openjdk.jmc.browser.uitest/pom.xml
--- a/application/uitests/org.openjdk.jmc.browser.uitest/pom.xml
+++ b/application/uitests/org.openjdk.jmc.browser.uitest/pom.xml
@@ -39,10 +39,15 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.browser.uitest</artifactId>
 	<version>1.0.0-SNAPSHOT</version>
 	<packaging>eclipse-test-plugin</packaging>
+	
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>org.eclipse.tycho</groupId>
 				<artifactId>tycho-surefire-plugin</artifactId>
diff a/application/uitests/org.openjdk.jmc.browser.uitest/src/test/java/org/openjdk/jmc/browser/uitest/CustomConnectionsTest.java b/application/uitests/org.openjdk.jmc.browser.uitest/src/test/java/org/openjdk/jmc/browser/uitest/CustomConnectionsTest.java
--- a/application/uitests/org.openjdk.jmc.browser.uitest/src/test/java/org/openjdk/jmc/browser/uitest/CustomConnectionsTest.java
+++ b/application/uitests/org.openjdk.jmc.browser.uitest/src/test/java/org/openjdk/jmc/browser/uitest/CustomConnectionsTest.java
@@ -42,11 +42,11 @@
 import org.openjdk.jmc.test.jemmy.misc.wrappers.MC;
 import org.openjdk.jmc.test.jemmy.misc.wrappers.MCLink;
 import org.openjdk.jmc.test.jemmy.misc.wrappers.MCMenu;
 
 /**
- * Class for testing some JVM Browser tree connection manipulation functionality 
+ * Class for testing some JVM Browser tree connection manipulation functionality
  */
 public class CustomConnectionsTest extends MCJemmyTestBase {
 
 	@ClassRule
 	public static MCUITestRule classTestRule = new MCUITestRule(verboseRuleOutput) {
diff a/application/uitests/org.openjdk.jmc.console.jconsole.uitest/pom.xml b/application/uitests/org.openjdk.jmc.console.jconsole.uitest/pom.xml
--- a/application/uitests/org.openjdk.jmc.console.jconsole.uitest/pom.xml
+++ b/application/uitests/org.openjdk.jmc.console.jconsole.uitest/pom.xml
@@ -38,11 +38,16 @@
 		<artifactId>missioncontrol.application.uitests</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.jconsole.uitest</artifactId>
 	<version>1.0.0-SNAPSHOT</version>
-	<packaging>eclipse-test-plugin</packaging>
+	<packaging>eclipse-test-plugin</packaging>	
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>org.eclipse.tycho</groupId>
 				<artifactId>tycho-surefire-plugin</artifactId>
diff a/application/uitests/org.openjdk.jmc.console.persistence.uitest/pom.xml b/application/uitests/org.openjdk.jmc.console.persistence.uitest/pom.xml
--- a/application/uitests/org.openjdk.jmc.console.persistence.uitest/pom.xml
+++ b/application/uitests/org.openjdk.jmc.console.persistence.uitest/pom.xml
@@ -39,10 +39,15 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.persistence.uitest</artifactId>
 	<version>1.0.0-SNAPSHOT</version>
 	<packaging>eclipse-test-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>org.eclipse.tycho</groupId>
 				<artifactId>tycho-surefire-plugin</artifactId>
diff a/application/uitests/org.openjdk.jmc.console.persistence.uitest/src/test/java/org/openjdk/jmc/console/persistence/uitest/PersistenceTest.java b/application/uitests/org.openjdk.jmc.console.persistence.uitest/src/test/java/org/openjdk/jmc/console/persistence/uitest/PersistenceTest.java
--- a/application/uitests/org.openjdk.jmc.console.persistence.uitest/src/test/java/org/openjdk/jmc/console/persistence/uitest/PersistenceTest.java
+++ b/application/uitests/org.openjdk.jmc.console.persistence.uitest/src/test/java/org/openjdk/jmc/console/persistence/uitest/PersistenceTest.java
@@ -41,11 +41,10 @@
 import org.openjdk.jmc.test.jemmy.misc.wrappers.MC;
 import org.openjdk.jmc.test.jemmy.misc.wrappers.JmxPersisted;
 
 /**
  * Class for testing JMX Data Persistence functionality
- *
  */
 public class PersistenceTest extends MCJemmyTestBase {
 	private static final String DEFAULT_ATTR = "JVM CPU Usage";
 	private static final String NON_DEFAULT_ATTR = "Loaded Class Count";
 
diff a/application/uitests/org.openjdk.jmc.console.uitest/pom.xml b/application/uitests/org.openjdk.jmc.console.uitest/pom.xml
--- a/application/uitests/org.openjdk.jmc.console.uitest/pom.xml
+++ b/application/uitests/org.openjdk.jmc.console.uitest/pom.xml
@@ -39,10 +39,15 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.console.uitest</artifactId>
 	<version>1.0.0-SNAPSHOT</version>
 	<packaging>eclipse-test-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>org.eclipse.tycho</groupId>
 				<artifactId>tycho-surefire-plugin</artifactId>
diff a/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/AccessibilityTest.java b/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/AccessibilityTest.java
--- a/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/AccessibilityTest.java
+++ b/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/AccessibilityTest.java
@@ -46,12 +46,12 @@
 import org.openjdk.jmc.test.jemmy.misc.wrappers.MC;
 import org.openjdk.jmc.test.jemmy.misc.wrappers.MCTable;
 import org.openjdk.jmc.test.jemmy.misc.wrappers.MCTable.TableRow;
 
 /**
- * Basic class for testing that accessibility for the JMX Console can be turned on and that graphs are
- * presented as accessible tables
+ * Basic class for testing that accessibility for the JMX Console can be turned on and that graphs
+ * are presented as accessible tables
  */
 public class AccessibilityTest extends MCJemmyTestBase {
 	private final static String CELL_REGEXP = "NaN|[0-9]*[\\.]*[0-9]+.*[%|B]?";
 
 	@ClassRule
diff a/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/ConsoleMemoryLeakTest.java b/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/ConsoleMemoryLeakTest.java
--- a/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/ConsoleMemoryLeakTest.java
+++ b/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/ConsoleMemoryLeakTest.java
@@ -50,12 +50,11 @@
 
 	@ClassRule
 	public static MCUITestRule classTestRule = new MCUITestRule(verboseRuleOutput) {
 		@Override
 		public void before() {
-			loadTimeSpanProperties("mc.memusage.console.minsecondsreload",
-					"mc.memusage.console.minsecondsnavigation");
+			loadTimeSpanProperties("mc.memusage.console.minsecondsreload", "mc.memusage.console.minsecondsnavigation");
 		}
 	};
 
 	@Test
 	public void testRepetitiveConsoleOpening() {
diff a/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/ConsolePreferencesTest.java b/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/ConsolePreferencesTest.java
--- a/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/ConsolePreferencesTest.java
+++ b/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/ConsolePreferencesTest.java
@@ -87,11 +87,12 @@
 
 		// Click "Restore Defaults" button
 		preferences.clickButton(JFaceResources.getString("defaults"));
 
 		// Check that all fields restored to defaults
-		ITypedQuantity<LinearUnit> intervalQty = UnitLookup.TIMESPAN.parseInteractive(preferences.getText(CommunicationPage.UPDATE_INTERVAL_FIELD_NAME));
+		ITypedQuantity<LinearUnit> intervalQty = UnitLookup.TIMESPAN
+				.parseInteractive(preferences.getText(CommunicationPage.UPDATE_INTERVAL_FIELD_NAME));
 		Assert.assertEquals(PreferencesKeys.DEFAULT_UPDATE_INTERVAL, intervalQty.longValueIn(UnitLookup.MILLISECOND));
 		Assert.assertEquals(String.valueOf(PreferencesKeys.DEFAULT_RETAINED_EVENT_VALUES),
 				preferences.getText(CommunicationPage.RETAINED_EVENT_FIELD_NAME));
 		Assert.assertEquals(PreferencesKeys.DEFAULT_MAIL_SERVER,
 				preferences.getText(CommunicationPage.SERVER_HOST_FIELD_NAME));
diff a/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/MBeanBrowserTabTest.java b/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/MBeanBrowserTabTest.java
--- a/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/MBeanBrowserTabTest.java
+++ b/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/MBeanBrowserTabTest.java
@@ -181,11 +181,11 @@
 
 		// Try to select the item "threadName" from the result tree
 		MCTree resultTree = MCTree.getByName(RESULT_TREE_NAME);
 		resultTree.select("threadName");
 	}
-	
+
 	/**
 	 * Verify that the Mbean Browser page Notifications works as expected
 	 */
 	@Test
 	public void testGcSubscription() {
@@ -405,11 +405,12 @@
 		// Ensure that the font is the text font, but sized to match the default font
 		final Font[] textFontHolder = new Font[1];
 		DisplayToolkit.safeSyncExec(() -> {
 			textFontHolder[0] = JFaceResources.getFontRegistry().getItalic(JFaceResources.TEXT_FONT);
 		});
-		FontData[] expectedFontData = FontDescriptor.createFrom(textFontHolder[0]).setHeight(DEFAULT_FONT_HEIGHT).getFontData();
+		FontData[] expectedFontData = FontDescriptor.createFrom(textFontHolder[0]).setHeight(DEFAULT_FONT_HEIGHT)
+				.getFontData();
 		Assert.assertArrayEquals(expectedFontData, valueFont.getFontData());
 	}
 
 	private List<String> getLatestNotificationLogEntry(MCTree logTree) {
 		List<List<String>> log = logTree.getAllItemTexts();
diff a/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/WelcomePageTest.java b/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/WelcomePageTest.java
--- a/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/WelcomePageTest.java
+++ b/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/WelcomePageTest.java
@@ -43,13 +43,13 @@
 /**
  * UI test which does a very basic check of the Welcome screen. Simply checks that it can be opened
  * and closed.
  */
 public class WelcomePageTest extends MCJemmyTestBase {
-	
+
 	/**
-	 * Open and close the Welcome page 
+	 * Open and close the Welcome page
 	 */
 	@Test
 	public void testWelcomePage() {
 		MCMenu.openWelcome();
 		MCTabFolder welcomePage = MCTabFolder.getByTabName("Welcome");
diff a/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/mbeanhelpers/Mbean2Runner.java b/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/mbeanhelpers/Mbean2Runner.java
--- a/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/mbeanhelpers/Mbean2Runner.java
+++ b/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/mbeanhelpers/Mbean2Runner.java
@@ -89,12 +89,13 @@
 						return "This is an awkward way of providing information.";
 					}
 
 					@Override
 					public MBeanInfo getMBeanInfo() {
-						return new MBeanInfo(Testable.class.getName(), "This is even uglier.", new MBeanAttributeInfo[0],
-								new MBeanConstructorInfo[0], new MBeanOperationInfo[0], new MBeanNotificationInfo[0]);
+						return new MBeanInfo(Testable.class.getName(), "This is even uglier.",
+								new MBeanAttributeInfo[0], new MBeanConstructorInfo[0], new MBeanOperationInfo[0],
+								new MBeanNotificationInfo[0]);
 					}
 				};
 				mbs.registerMBean(mbean, testName2);
 				StandardMBean mbean4 = new StandardMBean(testBean4, TestableMBean.class) {
 					@Override
@@ -132,12 +133,13 @@
 						return "This is an awkward way of providing information.";
 					}
 
 					@Override
 					public MBeanInfo getMBeanInfo() {
-						return new MBeanInfo(Testable.class.getName(), "This is even uglier.", new MBeanAttributeInfo[0], 
-								new MBeanConstructorInfo[0], new MBeanOperationInfo[0], new MBeanNotificationInfo[0]);
+						return new MBeanInfo(Testable.class.getName(), "This is even uglier.",
+								new MBeanAttributeInfo[0], new MBeanConstructorInfo[0], new MBeanOperationInfo[0],
+								new MBeanNotificationInfo[0]);
 					}
 				};
 				mbs.registerMBean(mbean3, testName3);
 				addMBean("test3", "type=buz");
 				addMBean("test4", "hugo=buz");
diff a/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/mbeanhelpers/Testable.java b/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/mbeanhelpers/Testable.java
--- a/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/mbeanhelpers/Testable.java
+++ b/application/uitests/org.openjdk.jmc.console.uitest/src/test/java/org/openjdk/jmc/console/uitest/mbeanhelpers/Testable.java
@@ -825,13 +825,13 @@
 		while (!stop) {
 			synchronized (this) {
 				long oldLastTime = lastTime;
 				lastTime = System.currentTimeMillis();
 //				System.out.println("Current time: " + getAliveTime());
-				sendNotification(new AttributeChangeNotification(this, sequenceNumber++, lastTime, "Update",
-						"AliveTime", "long", Long.valueOf(oldLastTime - startTime),
-						Long.valueOf(lastTime - startTime)));
+				sendNotification(
+						new AttributeChangeNotification(this, sequenceNumber++, lastTime, "Update", "AliveTime", "long",
+								Long.valueOf(oldLastTime - startTime), Long.valueOf(lastTime - startTime)));
 				try {
 					wait(Math.max(1, updateTime));
 				} catch (InterruptedException e) {
 				}
 			}
diff a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/pom.xml b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/pom.xml
--- a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/pom.xml
+++ b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/pom.xml
@@ -39,13 +39,16 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.flightrecorder.uitest</artifactId>
 	<version>1.0.0-SNAPSHOT</version>
 	<packaging>eclipse-test-plugin</packaging>
+
 	<properties>
-		<ui.flr.test.excludes>**/*MetadataTest*,${ui.test.excludes}</ui.flr.test.excludes>
+		<ui.flr.test.excludes>**/*MetadataTest*,${ui.test.excludes}</ui.flr.test.excludes>		
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
 	</properties>
+
 	<profiles>
 		<profile>
 			<id>runmetadatatest</id>
 			<activation>
 				<property>
diff a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/ControlRecordingsTest.java b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/ControlRecordingsTest.java
--- a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/ControlRecordingsTest.java
+++ b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/ControlRecordingsTest.java
@@ -331,12 +331,11 @@
 	 * Verifies that recording event period settings can be modified on the fly
 	 */
 	@Test
 	public void modifyEventPeriod() {
 		// FIXME: JMC-5207 - Remove the assume call once the GTK3 related bug has been fixed
-		Assume.assumeFalse("Skipping on Linux due to GTK3 related bug",
-				MCJemmyBase.OS_NAME.contains("linux"));
+		Assume.assumeFalse("Skipping on Linux due to GTK3 related bug", MCJemmyBase.OS_NAME.contains("linux"));
 		// Dump the test recording to get the current event settings (combined from, possibly multiple recordings)
 		MC.jvmBrowser.dumpLastPartOfRecording(TEST_RECORDING_NAME);
 		EventSettingsData currentSettings = JfrUi.parseEventSettingsTable();
 		MCMenu.closeActiveEditor();
 		// Find an event that has a period value
diff a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/JfrRecordingTest.java b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/JfrRecordingTest.java
--- a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/JfrRecordingTest.java
+++ b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/JfrRecordingTest.java
@@ -103,12 +103,11 @@
 	 * unpacking of the file (unless JMC/Jemmy leaks a lot of memory and causes memory shortage).
 	 */
 	@Test
 	public void verifySmallCompressedRecording() {
 		openCompressedRecording(RECORDING, LOW_ZIPFILE_MEMORY_FACTOR, false);
-		Assert.assertTrue("Unable to find an opened recording in JMC",
-				MCJemmyBase.waitForEditor(30000, RECORDING));
+		Assert.assertTrue("Unable to find an opened recording in JMC", MCJemmyBase.waitForEditor(30000, RECORDING));
 	}
 
 	/**
 	 * Testing opening a compressed recording that is supposed to generate dialogs regarding
 	 * unpacking of the file (by means of setting the RecordingLoader.zippedFileMemoryFactor to an
@@ -117,21 +116,19 @@
 	@Test
 	public void verifyLargeCompressedRecording() {
 		openCompressedRecording(RECORDING, EXTREME_ZIPFILE_MEMORY_FACTOR, false);
 		// removing all of the target file stuff from the dialog text
 		String dialogText = org.openjdk.jmc.flightrecorder.ui.messages.internal.Messages.FILE_OPENER_ZIPPED_FILE_TEXT;
-		String truncatedDialogText = dialogText.replace("{0}", RECORDING).substring(0,
-				dialogText.indexOf("{1}"));
+		String truncatedDialogText = dialogText.replace("{0}", RECORDING).substring(0, dialogText.indexOf("{1}"));
 		MCDialog decompressDialog = MCDialog.getByDialogTitleAndText(
 				org.openjdk.jmc.flightrecorder.ui.messages.internal.Messages.FILE_OPENER_ZIPPED_FILE_TITLE,
 				truncatedDialogText);
 		Assert.assertNotNull("Could not find a dialog with the title '"
 				+ org.openjdk.jmc.flightrecorder.ui.messages.internal.Messages.FILE_OPENER_ZIPPED_FILE_TITLE
 				+ "' and the text '" + truncatedDialogText + "'", decompressDialog);
 		decompressDialog.clickButton(Labels.YES);
-		Assert.assertTrue("Unable to find an opened recording in JMC",
-				MCJemmyBase.waitForEditor(30000, RECORDING));
+		Assert.assertTrue("Unable to find an opened recording in JMC", MCJemmyBase.waitForEditor(30000, RECORDING));
 	}
 
 	/**
 	 * Open a recording and make sure that all tabs are accessible
 	 */
diff a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/JfrThreadsPageTest.java b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/JfrThreadsPageTest.java
--- a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/JfrThreadsPageTest.java
+++ b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/JfrThreadsPageTest.java
@@ -114,6 +114,5 @@
 		// Verify the menu item isEnabled values are back to their default values
 		Assert.assertTrue(chartCanvas.isContextMenuItemEnabled(HIDE_THREAD));
 		Assert.assertFalse(chartCanvas.isContextMenuItemEnabled(RESET_CHART));
 	}
 }
-
diff a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/JfrWizardTest.java b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/JfrWizardTest.java
--- a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/JfrWizardTest.java
+++ b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/JfrWizardTest.java
@@ -104,11 +104,12 @@
 		Assert.assertTrue("The recording did not contain the minimal event settings set in the Flight Recording wizard",
 				verifyOnlyRecordingSettingEventEnabled(recordingEventSettings));
 	}
 
 	/**
-	 * Verifies that using one of the default recording templates result in a matching recording (settings wise)
+	 * Verifies that using one of the default recording templates result in a matching recording
+	 * (settings wise)
 	 */
 	@Test
 	public void verifyDefaultRecordingEventSettings() {
 		JfrWizard recordingWizard = MC.jvmBrowser.startFlightRecordingWizard();
 		recordingWizard.setDurationText("1 s");
@@ -133,11 +134,11 @@
 				"Settings differ between what was set in the wizard and what is actually present in the recording",
 				recordingEventSettings.canBeResultOf(wizardEventSettings, false, IS_JFR_NEXT));
 	}
 
 	/**
-	 * Verifies that a default recording template reflects the last run recording template 
+	 * Verifies that a default recording template reflects the last run recording template
 	 */
 	@Test
 	public void testOneTemplateAddedAfterStartingRecording() {
 		String recordingName = "TemplateAdditionTest";
 		String dynamicTemplateName = "Settings for '" + recordingName + "' - last started";
diff a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/OldRecordingsVerificationTest.java b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/OldRecordingsVerificationTest.java
--- a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/OldRecordingsVerificationTest.java
+++ b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/OldRecordingsVerificationTest.java
@@ -81,11 +81,12 @@
 			MCMenu.closeActiveEditor();
 		}
 	};
 
 	/**
-	 * Opens the recording and verifies the number of unique events (verifying the parsing of jfr metadata)
+	 * Opens the recording and verifies the number of unique events (verifying the parsing of jfr
+	 * metadata)
 	 */
 	@Test
 	public void verifyRecording() {
 		// First do a total tab traversal (standard tabs)
 		for (JfrUi.Tabs tabName : Arrays.asList(JfrUi.Tabs.values())) {
diff a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/StackTraceComponentTest.java b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/StackTraceComponentTest.java
--- a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/StackTraceComponentTest.java
+++ b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/StackTraceComponentTest.java
@@ -284,11 +284,11 @@
 				found = true;
 			} else {
 				frame++;
 			}
 		}
-		
+
 		Assert.assertTrue("Could not find suitable frame to analyze. Recording not suitable for this test", found);
 
 		// All hidden
 		stackTrace.setMethodFormatting(JfrStackTrace.FormatOption.HIDDEN, JfrStackTrace.FormatOption.HIDDEN,
 				JfrStackTrace.FormatOption.HIDDEN);
diff a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/TemplateManagerTest.java b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/TemplateManagerTest.java
--- a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/TemplateManagerTest.java
+++ b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/TemplateManagerTest.java
@@ -143,11 +143,11 @@
 		// Clean-up
 		templateManager.removeSelected();
 	}
 
 	/**
-	 * Verify that the correct dialog is opened when a template has first been customized 
+	 * Verify that the correct dialog is opened when a template has first been customized
 	 */
 	@Test
 	public void testModifiedTemplateOpensCorrectDialog() {
 		// Duplicate the first server template. It should contain control elements.
 		templateManager.templates.select(0);
diff a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/jvmflags/DynamicEnablementTest.java b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/jvmflags/DynamicEnablementTest.java
--- a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/jvmflags/DynamicEnablementTest.java
+++ b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/jvmflags/DynamicEnablementTest.java
@@ -81,11 +81,12 @@
 			MCMenu.closeActiveEditor();
 		}
 	};
 
 	/**
-	 * Tests that, depending on the VM startup flags, the JFR dynamic enablement is handled correctly by Mission Control
+	 * Tests that, depending on the VM startup flags, the JFR dynamic enablement is handled
+	 * correctly by Mission Control
 	 */
 	@Test
 	public void dynamicEnablement() {
 		MC.jvmBrowser.selectContextOption("Start Flight Recording...", connection);
 		if (hasDynamicEnablement) {
diff a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/pages/FileIOPageTest.java b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/pages/FileIOPageTest.java
--- a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/pages/FileIOPageTest.java
+++ b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/pages/FileIOPageTest.java
@@ -51,19 +51,13 @@
 	private static final String READ_COUNT_COL = JdkAggregators.FILE_READ_COUNT.getName();
 	private static final String FILE_WRITE_COL = Messages.FileIOPage_ROW_FILE_WRITE;
 	private static final String WRITE_COUNT_COL = JdkAggregators.FILE_WRITE_COUNT.getName();
 	private static final String RECORDING = "io_test.jfr";
 
-	private static final long[][] TABLE_VALUES = {
-		{  14560, 9212, 11848, 4653 },
-		{  14567, 9212, 41055, 3533 },
-		{ 251007,  223, 41055, 3533 },
-		{ 251007,  223, 43519,    6 },
-		{ 251007,  223, 43519,    6 },
-		{ 251007,  223, 43519,    6 },
-		{ 251007,  223, 43519,    6 },
-	};
+	private static final long[][] TABLE_VALUES = {{14560, 9212, 11848, 4653}, {14567, 9212, 41055, 3533},
+			{251007, 223, 41055, 3533}, {251007, 223, 43519, 6}, {251007, 223, 43519, 6}, {251007, 223, 43519, 6},
+			{251007, 223, 43519, 6},};
 
 	@Rule
 	public MCUITestRule testRule = new MCUITestRule(verboseRuleOutput) {
 		@Override
 		public void after() {
diff a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/pages/IOPageTestBase.java b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/pages/IOPageTestBase.java
--- a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/pages/IOPageTestBase.java
+++ b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/pages/IOPageTestBase.java
@@ -49,13 +49,14 @@
 import org.openjdk.jmc.test.jemmy.misc.wrappers.MCTable.TableRow;
 
 public abstract class IOPageTestBase extends MCJemmyTestBase {
 
 	private static final String PERCENTILE_COL = Messages.DurationPercentileTable_PERCENTILE_COL_NAME;
-	private static final double[] PERCENTILES = { 0.0, 90.0, 99.0, 99.9, 99.99, 99.999, 100.0 };
+	private static final double[] PERCENTILES = {0.0, 90.0, 99.0, 99.9, 99.99, 99.999, 100.0};
 
-	protected void checkPercentileTable(String readCol, String readCountCol, String writeCol, String writeCountCol, long[][] tableValues) {
+	protected void checkPercentileTable(
+		String readCol, String readCountCol, String writeCol, String writeCountCol, long[][] tableValues) {
 		MCTable table = MCTable.getByName(DurationPercentileTable.TABLE_NAME);
 		List<TableRow> rows = table.getRows();
 		assertEquals(PERCENTILES.length, rows.size());
 
 		int index = 0;
diff a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/pages/SocketIOPageTest.java b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/pages/SocketIOPageTest.java
--- a/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/pages/SocketIOPageTest.java
+++ b/application/uitests/org.openjdk.jmc.flightrecorder.uitest/src/test/java/org/openjdk/jmc/flightrecorder/uitest/pages/SocketIOPageTest.java
@@ -51,19 +51,13 @@
 	private static final String READ_COUNT_COL = JdkAggregators.SOCKET_READ_COUNT.getName();
 	private static final String SOCKET_WRITE_COL = Messages.SocketIOPage_ROW_SOCKET_WRITE;
 	private static final String WRITE_COUNT_COL = JdkAggregators.SOCKET_WRITE_COUNT.getName();
 	private static final String RECORDING = "io_test.jfr";
 
-	private static final long[][] TABLE_VALUES = {
-		{      3218, 209,    4624, 373 },
-		{ 998768639,  22,  611327,  38 },
-		{ 999292927,   7, 1814527,   4 },
-		{ 999817215,   1, 4288511,   1 },
-		{ 999817215,   1, 4288511,   1 },
-		{ 999817215,   1, 4288511,   1 },
-		{ 999817215,   1, 4288511,   1 },
-	};
+	private static final long[][] TABLE_VALUES = {{3218, 209, 4624, 373}, {998768639, 22, 611327, 38},
+			{999292927, 7, 1814527, 4}, {999817215, 1, 4288511, 1}, {999817215, 1, 4288511, 1},
+			{999817215, 1, 4288511, 1}, {999817215, 1, 4288511, 1},};
 
 	@Rule
 	public MCUITestRule testRule = new MCUITestRule(verboseRuleOutput) {
 		@Override
 		public void after() {
diff a/application/uitests/org.openjdk.jmc.rcp.application.uitest/pom.xml b/application/uitests/org.openjdk.jmc.rcp.application.uitest/pom.xml
--- a/application/uitests/org.openjdk.jmc.rcp.application.uitest/pom.xml
+++ b/application/uitests/org.openjdk.jmc.rcp.application.uitest/pom.xml
@@ -39,10 +39,15 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.rcp.application.uitest</artifactId>
 	<version>1.0.0-SNAPSHOT</version>
 	<packaging>eclipse-test-plugin</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>org.eclipse.tycho</groupId>
 				<artifactId>tycho-surefire-plugin</artifactId>
diff a/application/uitests/org.openjdk.jmc.test.jemmy/pom.xml b/application/uitests/org.openjdk.jmc.test.jemmy/pom.xml
--- a/application/uitests/org.openjdk.jmc.test.jemmy/pom.xml
+++ b/application/uitests/org.openjdk.jmc.test.jemmy/pom.xml
@@ -39,10 +39,14 @@
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>org.openjdk.jmc.test.jemmy</artifactId>
 	<packaging>eclipse-plugin</packaging>
 
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<dependencies>
 		<dependency>
 			<groupId>org.openjdk.jmc</groupId>
 			<artifactId>common</artifactId>
 			<version>8.0.0-SNAPSHOT</version>
diff a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/MCJemmyTestBase.java b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/MCJemmyTestBase.java
--- a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/MCJemmyTestBase.java
+++ b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/MCJemmyTestBase.java
@@ -121,11 +121,12 @@
 			}
 			okToRun = true;
 			if (!MC.mcHasFocus()) {
 				MCJemmyBase.focusMc();
 			}
-			Assert.assertTrue("Mission Control did not have focus when the test suite was initialized.", MC.mcHasFocus());
+			Assert.assertTrue("Mission Control did not have focus when the test suite was initialized.",
+					MC.mcHasFocus());
 			IS_JFR_NEXT = ConnectionHelper.is9u0EAorLater(TEST_CONNECTION);
 		}
 
 		@Override
 		public void after() {
diff a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/base/wrappers/MCJemmyBase.java b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/base/wrappers/MCJemmyBase.java
--- a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/base/wrappers/MCJemmyBase.java
+++ b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/base/wrappers/MCJemmyBase.java
@@ -559,11 +559,11 @@
 		Fetcher<Boolean> fetcher = new Fetcher<Boolean>() {
 			@Override
 			public void run() {
 				Menu menu = control.getControl().getMenu();
 				for (MenuItem item : menu.getItems()) {
-					if(menuItemText.equals(item.getText())) {
+					if (menuItemText.equals(item.getText())) {
 						setOutput(item.isEnabled());
 						break;
 					}
 				}
 			}
@@ -899,12 +899,12 @@
 	public static void clearFocus() {
 		focusedSection = null;
 	}
 
 	/**
-	 * @return a {@link List} of {@link MCTable} either in the currently focused section or
-	 *         globally in the shell
+	 * @return a {@link List} of {@link MCTable} either in the currently focused section or globally
+	 *         in the shell
 	 */
 	public static List<MCTable> getTables() {
 		if (focusedSection != null) {
 			return MCTable.getAll(focusedSection);
 		} else {
@@ -915,12 +915,12 @@
 	/**
 	 * Get all tables in the focused section (if set), otherwise from the Mission Control main shell
 	 * 
 	 * @param waitForIdle
 	 *            {@code true} if "UI-update queue" should be empty before looking for controls
-	 * @return a {@link List} of {@link MCTable} either in the currently focused section or
-	 *         globally in the shell
+	 * @return a {@link List} of {@link MCTable} either in the currently focused section or globally
+	 *         in the shell
 	 */
 	public static List<MCTable> getTables(boolean waitForIdle) {
 		if (focusedSection != null) {
 			return MCTable.getAll(focusedSection, waitForIdle);
 		} else {
diff a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/JfrNavigator.java b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/JfrNavigator.java
--- a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/JfrNavigator.java
+++ b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/JfrNavigator.java
@@ -78,12 +78,12 @@
 		initialize();
 		return jfrNavigatorTree.getItemsText();
 	}
 
 	/**
-	 * Initializes the JFR navigation tree. The navigation tree is disposed as soon
-	 * as all recordings have been closed so this needs to be checked every time
+	 * Initializes the JFR navigation tree. The navigation tree is disposed as soon as all
+	 * recordings have been closed so this needs to be checked every time
 	 */
 	private static void initialize() {
 		MCMenu.ensureJfrNavigationVisible();
 		if (jfrNavigatorTree == null || jfrNavigatorTree.isDisposed() || !jfrNavigatorTree.isVisible()) {
 			jfrNavigatorTree = MCTree.getFirstVisibleByName(getShell(), JfrOutlinePage.Outline_TREE_NAME, false);
diff a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/JfrUi.java b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/JfrUi.java
--- a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/JfrUi.java
+++ b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/JfrUi.java
@@ -149,11 +149,11 @@
 			case PROCESSES:
 				tabText = new String[] {"Environment", "Processes"};
 				break;
 			case NATIVE_LIBRARIES:
 				tabText = new String[] {"Environment", "Native Libraries"};
-				break;				
+				break;
 			case ENVIRONMENT_VARIABLES:
 				tabText = new String[] {"Environment", "Environment Variables"};
 				break;
 			default:
 				break;
@@ -162,46 +162,46 @@
 			return tabText;
 		}
 	}
 
 	/**
-	 * Opens the file in Mission Control, waits for the editor to show up and the system to become idle (all
-	 * rendering and rule calculation done)
+	 * Opens the file in Mission Control, waits for the editor to show up and the system to become
+	 * idle (all rendering and rule calculation done)
 	 *
 	 * @param file
 	 *            a file representing a flight recording
 	 */
 	public static void openJfr(File file) {
 		openJfr(file, true);
 	}
 
 	/**
-	 * Opens the file in Mission Control, optionally waits for the editor to show up and the system to become
-	 * idle (all rendering and rule calculation done)
+	 * Opens the file in Mission Control, optionally waits for the editor to show up and the system
+	 * to become idle (all rendering and rule calculation done)
 	 *
 	 * @param file
 	 *            a file representing a flight recording
 	 * @param waitForEditor
-	 *            {@code true} if supposed to wait for the editor before returning. Otherwise
-	 *            will return immediately
+	 *            {@code true} if supposed to wait for the editor before returning. Otherwise will
+	 *            return immediately
 	 */
 	public static void openJfr(File file, boolean waitForEditor) {
 		openJfr(file, true, waitForEditor);
 	}
 
 	/**
-	 * Opens the file in Mission Control, waits for the editor to show up and the system to become idle (all
-	 * rendering and rule calculation done)
+	 * Opens the file in Mission Control, waits for the editor to show up and the system to become
+	 * idle (all rendering and rule calculation done)
 	 *
 	 * @param file
 	 *            a file representing a flight recording
 	 * @param handlePotentialDecompressionDialog
-	 *            {@code true} if a (potential) decompression dialog should be handled by
-	 *            clicking the Yes button. Otherwise won't check for the dialog
+	 *            {@code true} if a (potential) decompression dialog should be handled by clicking
+	 *            the Yes button. Otherwise won't check for the dialog
 	 * @param waitForEditor
-	 *            {@code true} if supposed to wait for the editor before returning. Otherwise
-	 *            will return immediately
+	 *            {@code true} if supposed to wait for the editor before returning. Otherwise will
+	 *            return immediately
 	 */
 	public static void openJfr(File file, boolean handlePotentialDecompressionDialog, boolean waitForEditor) {
 		TestHelper.openJfr(file.getAbsolutePath());
 
 		if (handlePotentialDecompressionDialog) {
diff a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/JvmBrowser.java b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/JvmBrowser.java
--- a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/JvmBrowser.java
+++ b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/JvmBrowser.java
@@ -156,12 +156,12 @@
 	 *            The path of the new connection, this can be either empty, in which case the
 	 *            default naming scheme is used and the connection is created at the root level, or
 	 *            it can be a list of strings representing the path of the new connection. If the
 	 *            path is of length 1 and there is no item with that name, the new connection has
 	 *            that string as the name, however, if that item exists then the new connection is
-	 *            created beneath that item using the default name. This is basically the same
-	 *            for strings of length n > 1.
+	 *            created beneath that item using the default name. This is basically the same for
+	 *            strings of length n > 1.
 	 */
 	public void createConnection(
 		String host, String port, String user, String passwd, Boolean storeCredentials, String ... path) {
 		String connectionName = null;
 		String[] finalPath = null;
@@ -221,12 +221,12 @@
 	 *            The path of the new connection, this can be either empty, in which case the
 	 *            default naming scheme is used and the connection is created at the root level, or
 	 *            it can be a list of strings representing the path of the new connection. If the
 	 *            path is of length 1 and there is no item with that name, the new connection has
 	 *            that string as the name, however, if that item exists then the new connection is
-	 *            created beneath that item using the default name. This is basically the same
-	 *            for strings of length n > 1.
+	 *            created beneath that item using the default name. This is basically the same for
+	 *            strings of length n > 1.
 	 */
 	public void createConnection(String host, String port, String ... path) {
 		createConnection(host, port, null, null, null, path);
 	}
 
@@ -594,11 +594,11 @@
 	public void enableTreeLayout() {
 		setLayout(true);
 	}
 
 	/**
-	 * Finds out whether or not a connection with the specified path exists 
+	 * Finds out whether or not a connection with the specified path exists
 	 *
 	 * @param path
 	 *            the path to find
 	 * @return {@code true} if a connection is found, {@code false} if not.
 	 */
@@ -770,12 +770,11 @@
 	 *
 	 * @param password
 	 *            the password used as a new master password. Must be longer than five characters.
 	 */
 	public void handleSetMasterPassword(String password) {
-		MCDialog masterPasswordShell = MCDialog.getByAnyDialogTitle(
-				MasterPasswordWizardPage_SET_MASTER_PASSWORD_TITLE,
+		MCDialog masterPasswordShell = MCDialog.getByAnyDialogTitle(MasterPasswordWizardPage_SET_MASTER_PASSWORD_TITLE,
 				MasterPasswordWizardPage_VERIFY_MASTER_PASSWORD_TITLE);
 		if (masterPasswordShell.getText().equals(MasterPasswordWizardPage_SET_MASTER_PASSWORD_TITLE)) {
 			masterPasswordShell.enterText(Constants.PASSWORD1_FIELD_NAME, password);
 			masterPasswordShell.enterText(Constants.PASSWORD2_FIELD_NAME, password);
 		} else {
diff a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCButton.java b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCButton.java
--- a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCButton.java
+++ b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCButton.java
@@ -189,12 +189,11 @@
 	 *
 	 * @param shell
 	 *            the shell where to find the button
 	 * @param label
 	 *            the label string of the button
-	 * @return a {@link MCButton} in the correct shell matching the label, {@code null} if not
-	 *         found
+	 * @return a {@link MCButton} in the correct shell matching the label, {@code null} if not found
 	 */
 	@SuppressWarnings("unchecked")
 	public static MCButton getAnyByLabel(Wrap<? extends Shell> shell, String label) {
 		Lookup<Button> lookup = shell.as(Parent.class, Button.class).lookup(Button.class,
 				new ByTextControlLookup<Button>(label));
diff a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCCCombo.java b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCCCombo.java
--- a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCCCombo.java
+++ b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCCCombo.java
@@ -82,22 +82,24 @@
 	public static MCCCombo getByName(Wrap<? extends Shell> shell, String name) {
 		return new MCCCombo(shell.as(Parent.class, CCombo.class).lookup(CCombo.class, new ByName<>(name)).wrap());
 	}
 
 	/**
-	 * Returns a {@link MCCCombo} object having at least one selectable item that matches the text provided
+	 * Returns a {@link MCCCombo} object having at least one selectable item that matches the text
+	 * provided
 	 *
 	 * @param text
 	 *            the text string of the item to match
 	 * @return a {@link MCCCombo} object that matches the text
 	 */
 	public static MCCCombo getByText(String text) {
 		return getByText(getShell(), text);
 	}
 
 	/**
-	 * Returns a {@link MCCCombo} object having at least one selectable item that matches the text provided
+	 * Returns a {@link MCCCombo} object having at least one selectable item that matches the text
+	 * provided
 	 *
 	 * @param shell
 	 *            the shell from where to start the search for the CCombo object
 	 * @param text
 	 *            the text string of the item to match
@@ -106,11 +108,12 @@
 	public static MCCCombo getByText(Wrap<? extends Shell> shell, String text) {
 		return getByText(shell, text, DEFAULT_POLICY);
 	}
 
 	/**
-	 * Returns a {@link MCCCombo} object having at least one selectable item that matches the text provided
+	 * Returns a {@link MCCCombo} object having at least one selectable item that matches the text
+	 * provided
 	 *
 	 * @param shell
 	 *            the shell from where to start the search for the CCombo object
 	 * @param text
 	 *            the text string of the item to match
diff a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCChartCanvas.java b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCChartCanvas.java
--- a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCChartCanvas.java
+++ b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCChartCanvas.java
@@ -63,11 +63,12 @@
 	 *            the shell from where to start the search for the ChartCanvas object
 	 * @return a {@link List} of {@link MCChartCanvas} objects
 	 */
 	@SuppressWarnings("unchecked")
 	public static List<MCChartCanvas> getAll(Wrap<? extends Shell> shell) {
-		List<Wrap<? extends ChartCanvas>> list = getVisible(shell.as(Parent.class, ChartCanvas.class).lookup(ChartCanvas.class));
+		List<Wrap<? extends ChartCanvas>> list = getVisible(
+				shell.as(Parent.class, ChartCanvas.class).lookup(ChartCanvas.class));
 		List<MCChartCanvas> canvases = new ArrayList<>();
 		for (int i = 0; i < list.size(); i++) {
 			canvases.add(new MCChartCanvas(list.get(i)));
 		}
 		return canvases;
@@ -83,29 +84,31 @@
 	public static MCChartCanvas getFirst(Wrap<? extends Shell> shell) {
 		return getAll(shell).get(0);
 	}
 
 	/**
-	 * Returns the first visible {@link MCChartCanvas} object underneath the Mission Control main shell
+	 * Returns the first visible {@link MCChartCanvas} object underneath the Mission Control main
+	 * shell
 	 *
 	 * @return a {@link MCChartCanvas} object
 	 */
 	public static MCChartCanvas getChartCanvas() {
 		return getFirst(getShell());
 	}
 
 	/**
 	 * Clicks a specific menu item in the context menu
+	 * 
 	 * @param menuItemText
 	 *            the menu item of interest
 	 */
 	@SuppressWarnings("unchecked")
 	public void clickContextMenuItem(String menuItemText) {
 		focusMc();
 		StringPopupOwner<Shell> contextMenu = control.as(StringPopupOwner.class);
 		contextMenu.setPolicy(StringComparePolicy.SUBSTRING);
-		contextMenu.push(getRelativeClickPoint(), new String[]{menuItemText});
+		contextMenu.push(getRelativeClickPoint(), new String[] {menuItemText});
 	}
 
 	/**
 	 * Checks the isEnabled value for a menu item in the context menu
 	 *
diff a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCDialog.java b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCDialog.java
--- a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCDialog.java
+++ b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCDialog.java
@@ -378,11 +378,11 @@
 	 * @return the table with the provided index from the lookup
 	 */
 	public MCTable getTable(int index) {
 		return MCTable.getAll(this).get(index);
 	}
-	
+
 	/**
 	 * Returns the first {@link MCTree} in the SWT hierarchy for this {@link MCDialog}
 	 *
 	 * @return a {@link MCTree}
 	 */
@@ -396,11 +396,11 @@
 	 * @return a {@link List} of {@link MCTable}
 	 */
 	public List<MCTable> getAllTables() {
 		return MCTable.getAll(getDialogShell());
 	}
-	
+
 	private static boolean waitForClose(String dialogTitle, boolean waitForIdle, long maxWaitMs) {
 		long lookupEndTime = System.currentTimeMillis() + maxWaitMs;
 		do {
 			if (getVisible(Shells.SHELLS.lookup(new ByTextShell<>(dialogTitle)), waitForIdle, maxWaitMs, false)
 					.size() == 0) {
diff a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCForm.java b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCForm.java
--- a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCForm.java
+++ b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCForm.java
@@ -130,11 +130,12 @@
 	/**
 	 * Compares the title region text and image to those of the supplied tab folder
 	 *
 	 * @param tabFolder
 	 *            the tab folder for which to compare the selected tab with this form
-	 * @return {@code true} if both the title text and image equals those of the currently selected tab
+	 * @return {@code true} if both the title text and image equals those of the currently selected
+	 *         tab
 	 */
 	public boolean titleRegionMatches(MCTabFolder tabFolder) {
 		return getTitle().equals(tabFolder.getState()) && getImage().equals(tabFolder.getSelectedTabImage());
 	}
 }
diff a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCMenu.java b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCMenu.java
--- a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCMenu.java
+++ b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCMenu.java
@@ -267,14 +267,14 @@
 			}
 		}
 	}
 
 	/**
-	 * Enumeration for the "short keys" to access various Mission Control menu items. Primarily to be used with
-	 * Mac OS X where the menu bar is rendered with native code and inaccessible to Jemmy. Other
-	 * platforms should still use the "menu.push()" mechanism to ensure that the menu actually holds
-	 * the items. Note: Each mapping first needs to be configured in plugin.xml.
+	 * Enumeration for the "short keys" to access various Mission Control menu items. Primarily to
+	 * be used with Mac OS X where the menu bar is rendered with native code and inaccessible to
+	 * Jemmy. Other platforms should still use the "menu.push()" mechanism to ensure that the menu
+	 * actually holds the items. Note: Each mapping first needs to be configured in plugin.xml.
 	 */
 
 	private static enum MenuKeys {
 		PROGRESS_VIEW(KeyboardButtons.R, new KeyboardModifiers[] {KeyboardModifiers.SHIFT_DOWN_MASK, SHORTCUT_MODIFIER,
 				KeyboardModifiers.ALT_DOWN_MASK}),
diff a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCTabFolder.java b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCTabFolder.java
--- a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCTabFolder.java
+++ b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCTabFolder.java
@@ -93,11 +93,12 @@
 	public static MCTabFolder getByName(String name) {
 		return getByName(getShell(), name);
 	}
 
 	/**
-	 * Attempts to find a CTabFolder of the given name and returns a {@link @McTabFolder} representing it.
+	 * Attempts to find a CTabFolder of the given name and returns a {@link @McTabFolder}
+	 * representing it.
 	 *
 	 * @param shell
 	 *            the shell wrap to find the folder in
 	 * @param name
 	 *            the name of the folder
@@ -123,12 +124,12 @@
 	public static MCTabFolder getByTabName(String tabName) {
 		return getByTabName(getShell(), tabName);
 	}
 
 	/**
-	 * Attempts to find a CTabFolder with the given child tab folder name and returns a {@link @McTabFolder}
-	 * representing it.
+	 * Attempts to find a CTabFolder with the given child tab folder name and returns a
+	 * {@link @McTabFolder} representing it.
 	 *
 	 * @param shell
 	 *            the shell wrap to find the folder in
 	 * @param tabName
 	 *            the name (text) of the child tab folder
diff a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCTable.java b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCTable.java
--- a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCTable.java
+++ b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCTable.java
@@ -256,12 +256,12 @@
 	 *
 	 * @param shell
 	 *            the shell to search
 	 * @param index
 	 *            the index in the list of tables
-	 * @return the {@link MCTable} representing the table at the specified index, or {@code null}
-	 *         if index is out of range
+	 * @return the {@link MCTable} representing the table at the specified index, or {@code null} if
+	 *         index is out of range
 	 */
 	@SuppressWarnings("unchecked")
 	static MCTable getByIndex(Wrap<? extends Shell> shell, int index) {
 		Lookup<Table> lookup = shell.as(Parent.class, Table.class).lookup(Table.class);
 		return (index < lookup.size()) ? new MCTable(lookup.wrap(index)) : null;
@@ -730,23 +730,24 @@
 	public boolean select(int index) {
 		return select(index, 0);
 	}
 
 	/**
-	 * Selects the table row at a specified "start" index, and uses SHIFT+DOWN to
-	 * add to the selection up until a specified "end" index
+	 * Selects the table row at a specified "start" index, and uses SHIFT+DOWN to add to the
+	 * selection up until a specified "end" index
 	 *
 	 * @param from
 	 *            the row index to start from
 	 * @param to
 	 *            the row index to stop selecting
 	 */
 	public void selectItems(int start, int end) {
 		focusMc();
 		select(start);
 		for (int i = 0; i < end; i++) {
-			getShell().keyboard().pushKey(KeyboardButtons.DOWN, new KeyboardModifiers[] {KeyboardModifiers.SHIFT_DOWN_MASK});
+			getShell().keyboard().pushKey(KeyboardButtons.DOWN,
+					new KeyboardModifiers[] {KeyboardModifiers.SHIFT_DOWN_MASK});
 		}
 	}
 
 	/**
 	 * Context clicks the currently selected table item and chooses the supplied option
diff a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCText.java b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCText.java
--- a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCText.java
+++ b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCText.java
@@ -327,12 +327,12 @@
 	 * 
 	 * @param shell
 	 *            the shell from where to start searching for this text widget
 	 * @param index
 	 *            the index of the visible text widget to return
-	 * @return a {@link MCText} that is visible and shows up in the lookup at the index of the
-	 *         given parameter
+	 * @return a {@link MCText} that is visible and shows up in the lookup at the index of the given
+	 *         parameter
 	 */
 	@SuppressWarnings("unchecked")
 	public static MCText getVisible(Wrap<? extends Shell> shell, int index) {
 		return new MCText(
 				(Wrap<? extends Text>) getVisible(shell.as(Parent.class, Text.class).lookup(Text.class)).get(index));
@@ -380,12 +380,12 @@
 	/**
 	 * Returns the N'th visible {@link MCText} (in the main Mission Control Window)
 	 * 
 	 * @param index
 	 *            the index of the visible text widget to return
-	 * @return a {@link MCText} that is visible and shows up in the lookup at the index of the
-	 *         given parameter
+	 * @return a {@link MCText} that is visible and shows up in the lookup at the index of the given
+	 *         parameter
 	 */
 	public static MCText getVisible(int index) {
 		return getVisible(getShell(), index);
 	}
 
diff a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCToolBar.java b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCToolBar.java
--- a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCToolBar.java
+++ b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCToolBar.java
@@ -52,12 +52,12 @@
 	private MCToolBar(Wrap<? extends ToolBar> toolBar) {
 		this.control = toolBar;
 	}
 
 	/**
-	 * Finds and returns a {@link MCToolBar} (in the main Mission Control Window) by means of one of the
-	 * toolitem tooltips
+	 * Finds and returns a {@link MCToolBar} (in the main Mission Control Window) by means of one of
+	 * the toolitem tooltips
 	 *
 	 * @param toolTip
 	 *            the tooltip of any of the toolitems
 	 * @return a {@link MCToolBar}
 	 */
diff a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCTree.java b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCTree.java
--- a/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCTree.java
+++ b/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCTree.java
@@ -403,12 +403,11 @@
 		Display.getDefault().syncExec(fetcher);
 		return fetcher.getOutput();
 	}
 
 	/**
-	 * Returns a list of the currently selected tree item's fonts, ordered
-	 * by column
+	 * Returns a list of the currently selected tree item's fonts, ordered by column
 	 *
 	 * @return a {@link List} of {@link Font}
 	 */
 	public List<Font> getSelectedItemFonts() {
 		Fetcher<List<Font>> fetcher = new Fetcher<List<Font>>() {
diff a/application/uitests/pom.xml b/application/uitests/pom.xml
--- a/application/uitests/pom.xml
+++ b/application/uitests/pom.xml
@@ -38,10 +38,24 @@
 		<artifactId>missioncontrol.application</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>missioncontrol.application.uitests</artifactId>
 	<packaging>pom</packaging>
+
+	<properties>
+		<ui.test.vmargs>-XX:+IgnoreUnrecognizedVMOptions -XX:+UseG1GC -XX:+UnlockCommercialFeatures -XX:+FlightRecorder -Djava.net.preferIPv4Stack=true -Djdk.attach.allowAttachSelf=true --add-modules=java.xml.bind,java.xml.ws.annotation --add-exports=java.xml/com.sun.org.apache.xerces.internal.parsers=ALL-UNNAMED --add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED --add-exports=java.management/sun.management=ALL-UNNAMED --add-exports=java.management/sun.management.counter.perf=ALL-UNNAMED --add-exports=jdk.management.agent/jdk.internal.agent=ALL-UNNAMED --add-exports=jdk.attach/sun.tools.attach=ALL-UNNAMED --add-exports=java.desktop/sun.awt.windows=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=jdk.attach/sun.tools.attach=ALL-UNNAMED</ui.test.vmargs>
+		<ui.test.osvmargs/>
+		<ui.test.osappargs/>
+		<ui.test.run>false</ui.test.run>
+		<test.includes.default>**/Test*.java,**/*Test.java,**/*TestCase.java</test.includes.default>
+		<test.excludes.default>**/*$*</test.excludes.default>
+		<ui.test.excludes>**/uitest/**,${test.excludes.default}</ui.test.excludes>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+		<jacoco.plugin.version>0.8.3</jacoco.plugin.version>
+		<jmc.version>8.0.0-SNAPSHOT</jmc.version>
+	</properties>
+	
 	<modules>
 		<module>org.openjdk.jmc.browser.uitest</module>
 		<module>org.openjdk.jmc.console.jconsole.uitest</module>
 		<module>org.openjdk.jmc.console.persistence.uitest</module>
 		<module>org.openjdk.jmc.console.uitest</module>
@@ -51,42 +65,33 @@
 	</modules>
 	<dependencies>
 		<dependency>
 			<groupId>org.openjdk.jmc</groupId>
 			<artifactId>common</artifactId>
-			<version>8.0.0-SNAPSHOT</version>
+			<version>${jmc.version}</version>
 		</dependency>
 		<dependency>
 			<groupId>org.openjdk.jmc</groupId>
 			<artifactId>common.test</artifactId>
-			<version>8.0.0-SNAPSHOT</version>
+			<version>${jmc.version}</version>
 		</dependency>
 		<dependency>
 			<groupId>org.openjdk.jmc</groupId>
 			<artifactId>flightrecorder</artifactId>
-			<version>8.0.0-SNAPSHOT</version>
+			<version>${jmc.version}</version>
 		</dependency>
 		<dependency>
 			<groupId>org.openjdk.jmc</groupId>
 			<artifactId>flightrecorder.rules</artifactId>
-			<version>8.0.0-SNAPSHOT</version>
+			<version>${jmc.version}</version>
 		</dependency>
 		<dependency>
 			<groupId>org.openjdk.jmc</groupId>
 			<artifactId>flightrecorder.rules.jdk</artifactId>
-			<version>8.0.0-SNAPSHOT</version>
+			<version>${jmc.version}</version>
 		</dependency>
 	</dependencies>
-	<properties>
-		<ui.test.vmargs>-XX:+IgnoreUnrecognizedVMOptions -XX:+UseG1GC -XX:+UnlockCommercialFeatures -XX:+FlightRecorder -Djava.net.preferIPv4Stack=true -Djdk.attach.allowAttachSelf=true --add-modules=java.xml.bind,java.xml.ws.annotation --add-exports=java.xml/com.sun.org.apache.xerces.internal.parsers=ALL-UNNAMED --add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED --add-exports=java.management/sun.management=ALL-UNNAMED --add-exports=java.management/sun.management.counter.perf=ALL-UNNAMED --add-exports=jdk.management.agent/jdk.internal.agent=ALL-UNNAMED --add-exports=jdk.attach/sun.tools.attach=ALL-UNNAMED --add-exports=java.desktop/sun.awt.windows=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=jdk.attach/sun.tools.attach=ALL-UNNAMED</ui.test.vmargs>
-		<ui.test.osvmargs/>
-		<ui.test.osappargs/>
-		<ui.test.run>false</ui.test.run>
-		<test.includes.default>**/Test*.java,**/*Test.java,**/*TestCase.java</test.includes.default>
-		<test.excludes.default>**/*$*</test.excludes.default>
-		<ui.test.excludes>**/uitest/**,${test.excludes.default}</ui.test.excludes>
-	</properties>
 	<profiles>
 		<profile>
 			<id>NoTestIncludesDefined</id>
 			<activation>
 				<property>
@@ -154,29 +159,29 @@
 		</profile>
 	</profiles>
 	<build>
 		<plugins>
 			<plugin>
-                                <groupId>org.jacoco</groupId>
-                                <artifactId>jacoco-maven-plugin</artifactId>
-                                <version>0.8.3</version>
-                                <executions>
+				<groupId>org.jacoco</groupId>
+				<artifactId>jacoco-maven-plugin</artifactId>
+				<version>${jacoco.plugin.version}</version>
+				<executions>
+					<execution>
+						<id>pre-unit-test</id>
+						<goals>
+							<goal>prepare-agent</goal>
+						</goals>
+						<configuration>
+							<propertyName>surefireArgLine</propertyName>
+						</configuration>
+					</execution>
 					<execution>
-                                                <id>pre-unit-test</id>
-                                                <goals>
-                                                        <goal>prepare-agent</goal>
-                                                </goals>
-                                                <configuration>
-                                                        <propertyName>surefireArgLine</propertyName>
-                                                </configuration>
-                                        </execution>
-                                        <execution>
-                                                <id>post-unit-test</id>
-                                                <phase>verify</phase>
-                                                <goals>
-                                                        <goal>report</goal>
-                                                </goals>
+						<id>post-unit-test</id>
+						<phase>verify</phase>
+						<goals>
+							<goal>report</goal>
+						</goals>
 					</execution>
 				</executions>
 			</plugin>
 			<plugin>
 				<groupId>org.eclipse.tycho</groupId>
diff a/core/coverage/pom.xml b/core/coverage/pom.xml
--- a/core/coverage/pom.xml
+++ b/core/coverage/pom.xml
@@ -108,12 +108,12 @@
 						<phase>verify</phase>
 						<goals>
 							<goal>report-aggregate</goal>
 						</goals>
 						<configuration>
-                                                        <outputDirectory>${basedir}/coverage-report</outputDirectory>
-                                                </configuration>
+							<outputDirectory>${basedir}/coverage-report</outputDirectory>
+						</configuration>
 					</execution>
 				</executions>
 			</plugin>
 		</plugins>
 	</build>
diff a/core/pom.xml b/core/pom.xml
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -42,10 +42,11 @@
 		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
 		<maven.compiler.source>1.7</maven.compiler.source>
 		<maven.compiler.target>1.7</maven.compiler.target>
 		<manifest-location>META-INF</manifest-location>
+		<maven.bundle.plugin.version>3.5.1</maven.bundle.plugin.version>
 		<spotless.version>1.26.0</spotless.version>
 		<spotless.config.path>${basedir}/../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
 	</properties>
 
 	<modules>
@@ -77,32 +78,32 @@
 					</configuration>
 				</plugin>
 				<plugin>
 					<groupId>org.apache.felix</groupId>
 					<artifactId>maven-bundle-plugin</artifactId>
-					<version>3.5.1</version>
+					<version>${maven.bundle.plugin.version}</version>
 					<configuration>
 						<manifestLocation>${manifest-location}</manifestLocation>
 					</configuration>
 				</plugin>
 				<plugin>
-  				<groupId>com.diffplug.spotless</groupId>
+  					<groupId>com.diffplug.spotless</groupId>
   					<artifactId>spotless-maven-plugin</artifactId>
   					<version>${spotless.version}</version>
   					<configuration>
-    				<java>
-      				<eclipse>
-        				<file>${spotless.config.path}</file>
-        				<version>4.8.0</version>
-      				</eclipse>
-    				</java>
-  				</configuration>
+    					<java>
+      						<eclipse>
+        						<file>${spotless.config.path}</file>
+        						<version>4.8.0</version>
+      						</eclipse>
+    					</java>
+  					</configuration>
 				</plugin>
 			</plugins>
 		</pluginManagement>
 		<plugins>
-		<plugin>
+			<plugin>
 				<groupId>org.apache.maven.plugins</groupId>
 				<artifactId>maven-source-plugin</artifactId>
 				<version>3.0.1</version>
 				<executions>
 					<execution>
@@ -160,10 +161,9 @@
 				</executions>
 			</plugin>
 			<plugin>
 				<groupId>org.apache.felix</groupId>
 				<artifactId>maven-bundle-plugin</artifactId>
-				<version>3.5.1</version>
 			</plugin>
 		</plugins>
 	</build>
 </project>
diff a/pom.xml b/pom.xml
--- a/pom.xml
+++ b/pom.xml
@@ -79,10 +79,12 @@
 		<maven.buildnumber.version>1.4</maven.buildnumber.version>
 		<maven.deploy.version>2.8.2</maven.deploy.version>
 		<maven.directory.version>0.2</maven.directory.version>
 		<maven.enforcer.version>3.0.0-M1</maven.enforcer.version>
 		<maven.resources.version>3.0.2</maven.resources.version>
+		<spotless.version>1.26.0</spotless.version>
+		<spotless.config.path>${basedir}/configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
 		<spotbugs.version>3.1.10</spotbugs.version>
 		<buildId>${user.name}</buildId>
 		<!-- The version of the JDK embedded. When not embedding a JDK (this is 
 			usually the case), leave this empty. If embedding a JDK, include a comma 
 			and space, e.g. <jdkVersion>, JDK 12.0.2</jdkVersion> -->
@@ -411,10 +413,23 @@
 							</rules>
 						</configuration>
 					</execution>
 				</executions>
 			</plugin>
+			<plugin>
+  			<groupId>com.diffplug.spotless</groupId>
+  			<artifactId>spotless-maven-plugin</artifactId>
+  			<version>${spotless.version}</version>
+  			<configuration>
+    			<java>
+      			<eclipse>
+      				<file>${spotless.config.path}</file>
+      				<version>4.8.0</version>
+      			</eclipse>
+    			</java>
+  			</configuration>
+			</plugin>
 		</plugins>
 		<pluginManagement>
 			<plugins>
 				<plugin>
 					<groupId>org.apache.maven.plugins</groupId>
diff a/releng/platform-definitions/platform-definition-2018-09/pom.xml b/releng/platform-definitions/platform-definition-2018-09/pom.xml
--- a/releng/platform-definitions/platform-definition-2018-09/pom.xml
+++ b/releng/platform-definitions/platform-definition-2018-09/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>platform-definitions</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>platform-definition-2018-09</artifactId>
 	<packaging>eclipse-target-definition</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/releng/platform-definitions/platform-definition-2018-12/pom.xml b/releng/platform-definitions/platform-definition-2018-12/pom.xml
--- a/releng/platform-definitions/platform-definition-2018-12/pom.xml
+++ b/releng/platform-definitions/platform-definition-2018-12/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>platform-definitions</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>platform-definition-2018-12</artifactId>
 	<packaging>eclipse-target-definition</packaging>
+	
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/releng/platform-definitions/platform-definition-2019-03/pom.xml b/releng/platform-definitions/platform-definition-2019-03/pom.xml
--- a/releng/platform-definitions/platform-definition-2019-03/pom.xml
+++ b/releng/platform-definitions/platform-definition-2019-03/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>platform-definitions</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>platform-definition-2019-03</artifactId>
 	<packaging>eclipse-target-definition</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/releng/platform-definitions/platform-definition-2019-06/pom.xml b/releng/platform-definitions/platform-definition-2019-06/pom.xml
--- a/releng/platform-definitions/platform-definition-2019-06/pom.xml
+++ b/releng/platform-definitions/platform-definition-2019-06/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>platform-definitions</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>platform-definition-2019-06</artifactId>
 	<packaging>eclipse-target-definition</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/releng/platform-definitions/platform-definition-2019-09/pom.xml b/releng/platform-definitions/platform-definition-2019-09/pom.xml
--- a/releng/platform-definitions/platform-definition-2019-09/pom.xml
+++ b/releng/platform-definitions/platform-definition-2019-09/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>platform-definitions</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>platform-definition-2019-09</artifactId>
 	<packaging>eclipse-target-definition</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/releng/platform-definitions/platform-definition-photon/pom.xml b/releng/platform-definitions/platform-definition-photon/pom.xml
--- a/releng/platform-definitions/platform-definition-photon/pom.xml
+++ b/releng/platform-definitions/platform-definition-photon/pom.xml
@@ -38,6 +38,10 @@
 		<artifactId>platform-definitions</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>platform-definition-photon</artifactId>
 	<packaging>eclipse-target-definition</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
 </project>
diff a/releng/platform-definitions/pom.xml b/releng/platform-definitions/pom.xml
--- a/releng/platform-definitions/pom.xml
+++ b/releng/platform-definitions/pom.xml
@@ -38,10 +38,15 @@
 		<artifactId>missioncontrol.releng</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>platform-definitions</artifactId>
 	<packaging>pom</packaging>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<modules>
 		<!-- Photon will be deprecated eventually - don't use it! -->
 		<module>platform-definition-photon</module>
 		<module>platform-definition-2018-09</module>
 		<module>platform-definition-2018-12</module>
diff a/releng/pom.xml b/releng/pom.xml
--- a/releng/pom.xml
+++ b/releng/pom.xml
@@ -38,9 +38,14 @@
 		<artifactId>missioncontrol</artifactId>
 		<version>8.0.0-SNAPSHOT</version>
 	</parent>
 	<artifactId>missioncontrol.releng</artifactId>
 	<packaging>pom</packaging>
+	
+	<properties>
+		<spotless.config.path>${basedir}/../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+	
 	<modules>
 		<module>platform-definitions</module>
 	</modules>
 </project>
diff a/releng/third-party/pom.xml b/releng/third-party/pom.xml
--- a/releng/third-party/pom.xml
+++ b/releng/third-party/pom.xml
@@ -35,10 +35,15 @@
 	<modelVersion>4.0.0</modelVersion>
 	<groupId>org.openjdk.jmc</groupId>
 	<artifactId>external-dependencies</artifactId>
 	<packaging>war</packaging>
 	<version>8.0.0-SNAPSHOT</version>
+
+	<properties>
+		<spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
+	</properties>
+
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>org.reficio</groupId>
 				<artifactId>p2-maven-plugin</artifactId>
