diff --git a/.ci/check-only-javadoc-error.sh b/.ci/check-only-javadoc-error.sh
index 78fc128..ad0e480 100755
--- a/.ci/check-only-javadoc-error.sh
+++ b/.ci/check-only-javadoc-error.sh
@@ -7,7 +7,7 @@
 
 uname -a
 mvn --version
-mvn clean install -Pno-validations
+mvn -e clean install -Pno-validations
 git clone https://github.com/checkstyle/contribution && cd contribution/checkstyle-tester
 sed -i.'' 's/^guava/#guava/' projects-to-test-on.properties
 sed -i.'' 's/#spring-framework/spring-framework/' projects-to-test-on.properties
diff --git a/.ci/idea_inspection.sh b/.ci/idea_inspection.sh
index 9f29f98..b85a840 100755
--- a/.ci/idea_inspection.sh
+++ b/.ci/idea_inspection.sh
@@ -29,7 +29,7 @@
 fi
 
 #Execute compilation of Checkstyle to generate all source files
-mvn compile
+mvn -e compile
 
 mkdir -p $RESULTS_DIR
 rm -rf $RESULTS_DIR/*
diff --git a/.ci/run-link-check-plugin.sh b/.ci/run-link-check-plugin.sh
index 434df02..c6bac13 100755
--- a/.ci/run-link-check-plugin.sh
+++ b/.ci/run-link-check-plugin.sh
@@ -8,7 +8,7 @@
 uname -a
 mvn --version
 curl -I https://sourceforge.net/projects/checkstyle/
-mvn clean site -Dcheckstyle.ant.skip=true -DskipTests -DskipITs -Dpmd.skip=true -Dfindbugs.skip=true -Dcobertura.skip=true -Dcheckstyle.skip=true
+mvn -e clean site -Dcheckstyle.ant.skip=true -DskipTests -DskipITs -Dpmd.skip=true -Dfindbugs.skip=true -Dcobertura.skip=true -Dcheckstyle.skip=true
 echo "------------ grep of linkcheck.html--BEGIN"
 # "grep ... | cat" is required command is running in "set -e" mode and grep could return exit code 1 if nothing is matching
 grep externalLink target/site/linkcheck.html | cat
diff --git a/.ci/sonar.sh b/.ci/sonar.sh
index 9172697..e594b4a 100755
--- a/.ci/sonar.sh
+++ b/.ci/sonar.sh
@@ -4,7 +4,7 @@
 curl -X POST -u admin:admin -F 'backup=@config/default_sonar_profile.xml' -v http://localhost:9000/api/profiles/restore
 
 #execute inspection
-mvn sonar:sonar -P sonar -Dsonar.language=java -Dsonar.profile=checksyle-profile
+mvn -e sonar:sonar -P sonar -Dsonar.language=java -Dsonar.profile=checksyle-profile
 
 # Uncomment following to get HTML report.
 # mvn sonar:sonar -Dsonar.analysis.mode=preview -Dsonar.issuesReport.html.enable=true \
diff --git a/.ci/travis/travis.sh b/.ci/travis/travis.sh
index b0b7207..8de2b86 100755
--- a/.ci/travis/travis.sh
+++ b/.ci/travis/travis.sh
@@ -5,7 +5,7 @@
 case $1 in
 
 nondex)
-  mvn --fail-never clean nondex:nondex -DargLine='-Xms1024m -Xmx2048m'
+  mvn -e --fail-never clean nondex:nondex -DargLine='-Xms1024m -Xmx2048m'
   cat `grep -RlE 'td class=.x' .nondex/ | cat` < /dev/null > output.txt
   RESULT=$(cat output.txt | wc -c)
   cat output.txt
@@ -15,7 +15,7 @@
 
 versions)
   if [[ -v TRAVIS_EVENT_TYPE && $TRAVIS_EVENT_TYPE != "cron" ]]; then exit 0; fi
-  mvn clean versions:dependency-updates-report versions:plugin-updates-report
+  mvn -e clean versions:dependency-updates-report versions:plugin-updates-report
   if [ $(grep "<nextVersion>" target/*-updates-report.xml | cat | wc -l) -gt 0 ]; then
     echo "Version reports (dependency-updates-report.xml):"
     cat target/dependency-updates-report.xml
@@ -34,8 +34,8 @@
   ;;
 
 assembly-run-all-jar)
-  mvn clean package -Passembly
-  CS_POM_VERSION=$(mvn -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
+  mvn -e clean package -Passembly
+  CS_POM_VERSION=$(mvn -e -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
   echo version:$CS_POM_VERSION
   java -jar target/checkstyle-$CS_POM_VERSION-all.jar -c /google_checks.xml \
         src/it/resources/com/google/checkstyle/test/chapter3filestructure/rule332nolinewrap/InputNoLineWrapGood.java > output.log
@@ -49,7 +49,7 @@
   if [[ -v TRAVIS_PULL_REQUEST && $TRAVIS_PULL_REQUEST && $TRAVIS_PULL_REQUEST =~ ^([0-9]*)$ ]]; then exit 0; fi
   if [[ -z $SONAR_TOKEN ]]; then echo "SONAR_TOKEN is not set"; sleep 5s; exit 1; fi
   export MAVEN_OPTS='-Xmx2000m'
-  mvn clean package cobertura:cobertura sonar:sonar \
+  mvn -e clean package cobertura:cobertura sonar:sonar \
        -Dsonar.host.url=https://sonarcloud.io \
        -Dsonar.login=$SONAR_TOKEN \
        -Dcobertura.report.format=xml -Dmaven.test.failure.ignore=true \
@@ -58,7 +58,7 @@
 
 release-dry-run)
   if [ $(git log -1 | grep -E "\[maven-release-plugin\] prepare release" | cat | wc -l) -lt 1 ]; then
-    mvn release:prepare -DdryRun=true --batch-mode -Darguments='-DskipTests -DskipITs \
+    mvn -e release:prepare -DdryRun=true --batch-mode -Darguments='-DskipTests -DskipITs \
       -Dcobertura.skip=true -Dpmd.skip=true -Dfindbugs.skip=true  -Dxml.skip=true \
       -Dcheckstyle.ant.skip=true -Dcheckstyle.skip=true -Dgpg.skip=true'
   fi
@@ -89,9 +89,9 @@
   ;;
 
 no-error-test-sbe)
-  CS_POM_VERSION=$(mvn -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
+  CS_POM_VERSION=$(mvn -e -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
   echo version:$CS_POM_VERSION
-  mvn clean install -Pno-validations
+  mvn -e clean install -Pno-validations
   git clone https://github.com/real-logic/simple-binary-encoding.git
   cd simple-binary-encoding
   git checkout 963814f8ca1456de9daaf67e78663e7d877871a9
@@ -106,7 +106,7 @@
   sed -i.'' 's/#checkstyle/checkstyle/' projects-to-test-on.properties
   sed -i.'' 's/#sevntu-checkstyle/sevntu-checkstyle/' projects-to-test-on.properties
   cd ../../
-  mvn clean install -Pno-validations
+  mvn -e clean install -Pno-validations
   cd contribution/checkstyle-tester
   export MAVEN_OPTS="-Xmx2048m"
   groovy ./launch.groovy --listOfProjects projects-to-test-on.properties --config checks-nonjavadoc-error.xml
@@ -118,7 +118,7 @@
   sed -i.'' 's/^guava/#guava/' projects-to-test-on.properties
   sed -i.'' 's/#guava|/guava|/' projects-to-test-on.properties
   cd ../../
-  mvn clean install -Pno-validations
+  mvn -e clean install -Pno-validations
   cd contribution/checkstyle-tester
   export MAVEN_OPTS="-Xmx2048m"
   groovy ./launch.groovy --listOfProjects projects-to-test-on.properties --config checks-nonjavadoc-error.xml
@@ -130,7 +130,7 @@
   sed -i.'' 's/^guava/#guava/' projects-to-test-on.properties
   sed -i.'' 's/#guava|/guava|/' projects-to-test-on.properties
   cd ../../
-  mvn clean install -Pno-validations
+  mvn -e clean install -Pno-validations
   sed -i.'' 's/warning/ignore/' src/main/resources/google_checks.xml
   cd contribution/checkstyle-tester
   export MAVEN_OPTS="-Xmx2048m"
@@ -143,7 +143,7 @@
   sed -i.'' 's/^guava/#guava/' projects-to-test-on.properties
   sed -i.'' 's/#hibernate-orm/hibernate-orm/' projects-to-test-on.properties
   cd ../../
-  mvn clean install -Pno-validations
+  mvn -e clean install -Pno-validations
   cd contribution/checkstyle-tester
   export MAVEN_OPTS="-Xmx2048m"
   groovy ./launch.groovy --listOfProjects projects-to-test-on.properties --config checks-nonjavadoc-error.xml
@@ -155,7 +155,7 @@
   sed -i.'' 's/^guava/#guava/' projects-to-test-on.properties
   sed -i.'' 's/#findbugs/findbugs/' projects-to-test-on.properties
   cd ../../
-  mvn clean install -Pno-validations
+  mvn -e clean install -Pno-validations
   cd contribution/checkstyle-tester
   export MAVEN_OPTS="-Xmx2048m"
   groovy ./launch.groovy --listOfProjects projects-to-test-on.properties --config checks-nonjavadoc-error.xml
@@ -167,7 +167,7 @@
   sed -i.'' 's/^guava/#guava/' projects-to-test-on.properties
   sed -i.'' 's/#spring-framework/spring-framework/' projects-to-test-on.properties
   cd ../../
-  mvn clean install -Pno-validations
+  mvn -e clean install -Pno-validations
   cd contribution/checkstyle-tester
   export MAVEN_OPTS="-Xmx2048m"
   groovy ./launch.groovy --listOfProjects projects-to-test-on.properties --config checks-nonjavadoc-error.xml
@@ -179,7 +179,7 @@
   sed -i.'' 's/^guava/#guava/' projects-to-test-on.properties
   sed -i.'' 's/#Hbase/Hbase/' projects-to-test-on.properties
   cd ../../
-  mvn clean install -Pno-validations
+  mvn -e clean install -Pno-validations
   cd contribution/checkstyle-tester
   export MAVEN_OPTS="-Xmx2048m"
   groovy ./launch.groovy --listOfProjects projects-to-test-on.properties --config checks-nonjavadoc-error.xml
@@ -193,7 +193,7 @@
   sed -i.'' 's/#elasticsearch/elasticsearch/' projects-to-test-on.properties
   sed -i.'' 's/#lombok-ast/lombok-ast/' projects-to-test-on.properties
   cd ../../
-  mvn clean install -Pno-validations
+  mvn -e clean install -Pno-validations
   cd contribution/checkstyle-tester
   export MAVEN_OPTS="-Xmx2048m"
   groovy ./launch.groovy --listOfProjects projects-to-test-on.properties --config checks-nonjavadoc-error.xml
@@ -210,7 +210,7 @@
   sed -i.'' 's/#apache-jsecurity/apache-jsecurity/' projects-to-test-on.properties
   sed -i.'' 's/#android-launcher/android-launcher/' projects-to-test-on.properties
   cd ../../
-  mvn clean install -Pno-validations
+  mvn -e clean install -Pno-validations
   cd contribution/checkstyle-tester
   export MAVEN_OPTS="-Xmx2048m"
   groovy ./launch.groovy --listOfProjects projects-to-test-on.properties --config checks-nonjavadoc-error.xml
@@ -219,7 +219,7 @@
 cobertura-check)
   set +e
   echo "Output and Error output will be redirected to mvn-log.log file ..."
-  mvn clean compile cobertura:cobertura cobertura:check -DargLine='-Xms1024m -Xmx2048m' &> mvn-log.log
+  mvn -e clean compile cobertura:cobertura cobertura:check -DargLine='-Xms1024m -Xmx2048m' &> mvn-log.log
   echo "Printing mvn-log.log file:"
   cat mvn-log.log
   sleep 5s
diff --git a/.ci/travis/xtr_releasenotes-gen.sh b/.ci/travis/xtr_releasenotes-gen.sh
index 6b1af3c..c7f48fc 100755
--- a/.ci/travis/xtr_releasenotes-gen.sh
+++ b/.ci/travis/xtr_releasenotes-gen.sh
@@ -5,14 +5,14 @@
 if [[ $TRAVIS_PULL_REQUEST =~ ^([0-9]*)$ ]]; then exit 0; fi
 git clone https://github.com/checkstyle/contribution
 cd contribution/releasenotes-builder
-mvn clean compile package
+mvn -e clean compile package
 cd ../../
 # we need to do full clone as Travis do "git clone --depth=50"
 git clone https://github.com/checkstyle/checkstyle
 cd checkstyle
 LATEST_RELEASE_TAG=$(git describe $(git rev-list --tags --max-count=1))
 cd ../
-CS_RELEASE_VERSION=$(mvn -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec | sed 's/-SNAPSHOT//' )
+CS_RELEASE_VERSION=$(mvn -e -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec | sed 's/-SNAPSHOT//' )
 echo LATEST_RELEASE_TAG=$LATEST_RELEASE_TAG
 echo CS_RELEASE_VERSION=$CS_RELEASE_VERSION
 java -jar contribution/releasenotes-builder/target/releasenotes-builder-1.0-all.jar \
diff --git a/.ci/wercker.sh b/.ci/wercker.sh
index fdf185f..0de1a20 100755
--- a/.ci/wercker.sh
+++ b/.ci/wercker.sh
@@ -5,91 +5,91 @@
 case $1 in
 
 no-error-pgjdbc)
-  CS_POM_VERSION=$(mvn -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
+  CS_POM_VERSION=$(mvn -e -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
   echo CS_version: ${CS_POM_VERSION}
   for i in 1 2 3 4 5; do git clone https://github.com/pgjdbc/pgjdbc.git && break || sleep 15; done
   cd pgjdbc/pgjdbc
-  mvn checkstyle:check -Dcheckstyle.version=${CS_POM_VERSION}
+  mvn -e checkstyle:check -Dcheckstyle.version=${CS_POM_VERSION}
   cd ../../
   rm -rf pgjdbc
   ;;
 
 no-error-orekit)
-  CS_POM_VERSION=$(mvn -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
+  CS_POM_VERSION=$(mvn -e -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
   echo CS_version: ${CS_POM_VERSION}
   for i in 1 2 3 4 5; do git clone https://github.com/Hipparchus-Math/hipparchus.git && break || sleep 15; done
   cd hipparchus
   git checkout 905006092493e350dcd68dd7b2ec1dedaf4983b7
-  mvn clean install -DskipTests
+  mvn -e clean install -DskipTests
   cd ../
   for i in 1 2 3 4 5; do git clone https://github.com/CS-SI/Orekit.git && break || sleep 15; done
   cd Orekit
   # Orekit use 'develop' branch as target for PullRequest merges
   git checkout develop
-  mvn compile checkstyle:check -Dorekit.checkstyle.version=${CS_POM_VERSION}
+  mvn -e compile checkstyle:check -Dorekit.checkstyle.version=${CS_POM_VERSION}
   cd ../
   rm -rf hipparchus Orekit
   ;;
 
 no-error-xwiki)
-  CS_POM_VERSION=$(mvn -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
+  CS_POM_VERSION=$(mvn -e -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
   echo CS_version: ${CS_POM_VERSION}
   for i in 1 2 3 4 5; do git clone https://github.com/xwiki/xwiki-commons/ && break || sleep 15; done
   cd xwiki-commons
   git checkout 44b0c0048c516dae20cf5f8a71181af836549484
-  mvn install -DskipTests -Dxwiki.clirr.skip=true checkstyle:check -Dcheckstyle.version=${CS_POM_VERSION}
+  mvn -e install -DskipTests -Dxwiki.clirr.skip=true checkstyle:check -Dcheckstyle.version=${CS_POM_VERSION}
   cd ../../
   rm -rf xwiki-commons
   ;;
 
 no-error-apex-core)
-  CS_POM_VERSION=$(mvn -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
+  CS_POM_VERSION=$(mvn -e -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
   echo CS_version: ${CS_POM_VERSION}
   for i in 1 2 3 4 5; do git clone https://github.com/apache/incubator-apex-core/ && break || sleep 15; done
   cd incubator-apex-core
-  mvn compile checkstyle:check -Dcheckstyle.version=${CS_POM_VERSION}
+  mvn -e compile checkstyle:check -Dcheckstyle.version=${CS_POM_VERSION}
   cd ../
   rm -rf incubator-apex-core
   ;;
 
 no-error-hibernate-search)
-  CS_POM_VERSION=$(mvn -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
+  CS_POM_VERSION=$(mvn -e -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
   echo CS_version: ${CS_POM_VERSION}
   for i in 1 2 3 4 5; do git clone https://github.com/hibernate/hibernate-search.git && break || sleep 15; done
   cd hibernate-search
-  mvn -s settings-example.xml clean install -DskipTests=true -Dtest.elasticsearch.host.provided=true -Dpuppycrawl.checkstyle.version=${CS_POM_VERSION}
-  mvn -s settings-example.xml checkstyle:check  -Dpuppycrawl.checkstyle.version=${CS_POM_VERSION}
+  mvn -e -s settings-example.xml clean install -DskipTests=true -Dtest.elasticsearch.host.provided=true -Dpuppycrawl.checkstyle.version=${CS_POM_VERSION}
+  mvn -e -s settings-example.xml checkstyle:check  -Dpuppycrawl.checkstyle.version=${CS_POM_VERSION}
   cd ../
   rm -rf hibernate-search
   ;;
 
 no-error-htmlunit)
-  CS_POM_VERSION=$(mvn -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
+  CS_POM_VERSION=$(mvn -e -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
   echo CS_version: ${CS_POM_VERSION}
   echo "checkouting project sources ..."
   svn -q export https://svn.code.sf.net/p/htmlunit/code/trunk/htmlunit@r14923 htmlunit
   cd htmlunit
   sed -i "s/            <version>2.28-SNAPSHOT/            <version>2.28-20171106.080245-12/" pom.xml
   echo "Running checkstyle validation ..."
-  mvn compile checkstyle:check -Dcheckstyle.version=${CS_POM_VERSION}
+  mvn -e compile checkstyle:check -Dcheckstyle.version=${CS_POM_VERSION}
   cd ../
   rm -rf htmlunit
   ;;
 
 no-error-checkstyles-sevntu)
   set -e
-  CS_POM_VERSION=$(mvn -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
+  CS_POM_VERSION=$(mvn -e -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
   echo CS_version: ${CS_POM_VERSION}
-  mvn compile verify -Dmaven.sevntu-checkstyle-check.checkstyle.version=${CS_POM_VERSION} -Dmaven.test.skip=true -Dcheckstyle.ant.skip=true -Dpmd.skip=true -Dfindbugs.skip=true -Dcobertura.skip=true -Dforbiddenapis.skip=true -Dxml.skip=true
+  mvn -e compile verify -Dmaven.sevntu-checkstyle-check.checkstyle.version=${CS_POM_VERSION} -Dmaven.test.skip=true -Dcheckstyle.ant.skip=true -Dpmd.skip=true -Dfindbugs.skip=true -Dcobertura.skip=true -Dforbiddenapis.skip=true -Dxml.skip=true
   ;;
 
 no-error-sevntu-checks)
   set -e
-  CS_POM_VERSION=$(mvn -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
+  CS_POM_VERSION=$(mvn -e -q -Dexec.executable='echo' -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
   echo CS_version: ${CS_POM_VERSION}
   for i in 1 2 3 4 5; do git clone https://github.com/sevntu-checkstyle/sevntu.checkstyle && break || sleep 15; done
   cd sevntu.checkstyle/sevntu-checks
-  mvn -Pno-validations verify  -Dcheckstyle.skip=false -Dcheckstyle.version=${CS_POM_VERSION} -Dcheckstyle.configLocation=../../config/checkstyle_checks.xml
+  mvn -e -Pno-validations verify  -Dcheckstyle.skip=false -Dcheckstyle.version=${CS_POM_VERSION} -Dcheckstyle.configLocation=../../config/checkstyle_checks.xml
   ;;
 
 no-exception-struts)
diff --git a/.travis.yml b/.travis.yml
index 614ce7d..44478c7 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -32,14 +32,14 @@
     - jdk: oraclejdk8
       env:
         - DESC="tests and deploy"
-        - CMD="mvn clean integration-test failsafe:verify -DargLine='-Xms1024m -Xmx2048m'"
+        - CMD="mvn -e clean integration-test failsafe:verify -DargLine='-Xms1024m -Xmx2048m'"
         - DEPLOY="true"
 
     # checkstyle (oraclejdk8)
     - jdk: oraclejdk8
       env:
         - DESC="checkstyle and sevntu-checkstyle"
-        - CMD="export MAVEN_OPTS='-Xmx2000m' && mvn clean verify -DskipTests -DskipITs -Dpmd.skip=true -Dfindbugs.skip=true -Dcobertura.skip=true"
+        - CMD="export MAVEN_OPTS='-Xmx2000m' && mvn -e clean verify -DskipTests -DskipITs -Dpmd.skip=true -Dfindbugs.skip=true -Dcobertura.skip=true"
 
     # cobertura and codecov (oraclejdk8)
     - jdk: oraclejdk8
@@ -52,13 +52,13 @@
     - jdk: oraclejdk8
       env:
         - DESC="findbugs,spotbugs,pmd"
-        - CMD="export MAVEN_OPTS='-Xmx2000m' && mvn clean compile pmd:check findbugs:check spotbugs:check"
+        - CMD="export MAVEN_OPTS='-Xmx2000m' && mvn -e clean compile pmd:check findbugs:check spotbugs:check"
 
     # eclipse static analysis
     - jdk: oraclejdk8
       env:
         - DESC="eclipse static analysis"
-        - CMD="mvn clean compile exec:exec -Peclipse-compiler"
+        - CMD="mvn -e clean compile exec:exec -Peclipse-compiler"
 
     # Releasenotes generation - validaton
     - jdk: oraclejdk8
@@ -77,7 +77,7 @@
     #- jdk: oraclejdk8
     #  env:
     #    - DESC="site"
-    #    - CMD1="mvn clean site -Dlinkcheck.skip=true -DskipTests -DskipITs "
+    #    - CMD1="mvn -e clean site -Dlinkcheck.skip=true -DskipTests -DskipITs "
     #    - CMD2=" -Dpmd.skip=true -Dfindbugs.skip=true -Dcobertura.skip=true "
     #    - CMD3=" -Dcheckstyle.ant.skip=true -Dcheckstyle.skip=true"
     #    - CMD=$CMD1$CMD2$CMD3
@@ -87,42 +87,42 @@
     - jdk: oraclejdk8
       env:
         - DESC="tests de"
-        - CMD="mvn clean integration-test failsafe:verify -DargLine='-Duser.language=de -Duser.country=DE -Xms1024m -Xmx2048m'"
+        - CMD="mvn -e clean integration-test failsafe:verify -DargLine='-Duser.language=de -Duser.country=DE -Xms1024m -Xmx2048m'"
     # unit tests in Spanish locale (oraclejdk8)
     - jdk: oraclejdk8
       env:
         - DESC="tests es"
-        - CMD="mvn clean integration-test failsafe:verify -DargLine='-Duser.language=es -Duser.country=ES -Xms1024m -Xmx2048m'"
+        - CMD="mvn -e clean integration-test failsafe:verify -DargLine='-Duser.language=es -Duser.country=ES -Xms1024m -Xmx2048m'"
     # unit tests in Finnish locale (oraclejdk8)
     - jdk: oraclejdk8
       env:
         - DESC="tests fi"
-        - CMD="mvn clean integration-test failsafe:verify -DargLine='-Duser.language=fi -Duser.country=FI -Xms1024m -Xmx2048m'"
+        - CMD="mvn -e clean integration-test failsafe:verify -DargLine='-Duser.language=fi -Duser.country=FI -Xms1024m -Xmx2048m'"
     # unit tests in French locale (oraclejdk8)
     - jdk: oraclejdk8
       env:
         - DESC="tests fr"
-        - CMD="mvn clean integration-test failsafe:verify -DargLine='-Duser.language=fr -Duser.country=FR -Xms1024m -Xmx2048m'"
+        - CMD="mvn -e clean integration-test failsafe:verify -DargLine='-Duser.language=fr -Duser.country=FR -Xms1024m -Xmx2048m'"
     # unit tests in Chinese locale (oraclejdk8)
     - jdk: oraclejdk8
       env:
         - DESC="tests zh"
-        - CMD="mvn clean integration-test failsafe:verify -DargLine='-Duser.language=zh -Duser.country=CN -Xms1024m -Xmx2048m'"
+        - CMD="mvn -e clean integration-test failsafe:verify -DargLine='-Duser.language=zh -Duser.country=CN -Xms1024m -Xmx2048m'"
     # unit tests in Japanese locale (oraclejdk8)
     - jdk: oraclejdk8
       env:
         - DESC="tests ja"
-        - CMD="mvn clean integration-test failsafe:verify -DargLine='-Duser.language=ja -Duser.country=JP -Xms1024m -Xmx2048m'"
+        - CMD="mvn -e clean integration-test failsafe:verify -DargLine='-Duser.language=ja -Duser.country=JP -Xms1024m -Xmx2048m'"
     # unit tests in Portuguese locale (oraclejdk8)
     - jdk: oraclejdk8
       env:
         - DESC="tests pt"
-        - CMD="mvn clean integration-test failsafe:verify -DargLine='-Duser.language=pt -Duser.country=PT -Xms1024m -Xmx2048m'"
+        - CMD="mvn -e clean integration-test failsafe:verify -DargLine='-Duser.language=pt -Duser.country=PT -Xms1024m -Xmx2048m'"
     # unit tests in Turkish locale (oraclejdk8)
     - jdk: oraclejdk8
       env:
         - DESC="tests tr"
-        - CMD="mvn clean integration-test failsafe:verify -DargLine='-Duser.language=tr -Duser.country=TR -Xms1024m -Xmx2048m'"
+        - CMD="mvn -e clean integration-test failsafe:verify -DargLine='-Duser.language=tr -Duser.country=TR -Xms1024m -Xmx2048m'"
 
     # assembly (oraclejdk8)
     - jdk: oraclejdk8
@@ -157,7 +157,7 @@
     - os: osx
       env:
         - DESC="MacOS verify, site, assembly"
-        - CMD="export JAVA_HOME=$(/usr/libexec/java_home) && mvn package -Dlinkcheck.skip=true && mvn package -Passembly "
+        - CMD="export JAVA_HOME=$(/usr/libexec/java_home) && mvn -e package -Dlinkcheck.skip=true && mvn -e package -Passembly "
 
     # https://sonarcloud.io (oraclejdk8)
     - jdk: oraclejdk8
@@ -210,6 +210,6 @@
             && $SKIP_DEPLOY == 'false'
        ]];
     then
-        mvn -s config/deploy-settings.xml -Pno-validations deploy;
+        mvn -e -s config/deploy-settings.xml -Pno-validations deploy;
         echo "deploy to maven snapshot repository is finished";
     fi
diff --git a/circle.yml b/circle.yml
index c355e89..2db6ea5 100644
--- a/circle.yml
+++ b/circle.yml
@@ -7,9 +7,9 @@
   pre:
     - if [ ! -d groovy-2.4.7 ]; then wget https://dl.bintray.com/groovy/maven/apache-groovy-binary-2.4.7.zip && unzip apache-groovy-binary-2.4.7.zip; fi
 
-  # we to override as 'mvn dependecy:go-ofline' does not download all dependencies
+  # we to override as 'mvn -e dependecy:go-ofline' does not download all dependencies
   override:
-    - mvn install -Pno-validations
+    - mvn -e install -Pno-validations
     - eval $TESTER_DEPENDENCIES
 machine:
   java:
diff --git a/release.sh b/release.sh
index 8690ef7..2465a4b 100755
--- a/release.sh
+++ b/release.sh
@@ -25,10 +25,10 @@
 echo "exit" | ssh -t $SF_USER,checkstyle@shell.sourceforge.net create
 
 # Version bump in pom.xml - https://github.com/checkstyle/checkstyle/commits/master
-mvn -Pgpg release:prepare -B -Darguments="-DskipTests -DskipITs -Dpmd.skip=true -Dfindbugs.skip=true -Dcobertura.skip=true -Dcheckstyle.ant.skip=true -Dcheckstyle.skip=true -Dxml.skip=true"
+mvn -e -Pgpg release:prepare -B -Darguments="-DskipTests -DskipITs -Dpmd.skip=true -Dfindbugs.skip=true -Dcobertura.skip=true -Dcheckstyle.ant.skip=true -Dcheckstyle.skip=true -Dxml.skip=true"
 
 # deployment of jars to maven central and publication of site to http://checkstyle.sourceforge.net/new-site/
-mvn -Pgpg release:perform -Darguments='-Dcheckstyle.ant.skip=true -Dcheckstyle.skip=true'
+mvn -e -Pgpg release:perform -Darguments='-Dcheckstyle.ant.skip=true -Dcheckstyle.skip=true'
 
 #############################
 
@@ -53,7 +53,7 @@
 git checkout checkstyle-$RELEASE
 
 #Generate all binaries
-mvn -Passembly clean package
+mvn -e -Passembly clean package
 
 #Publish them to sourceforce
 FRS_PATH=/home/frs/project/checkstyle/checkstyle/$RELEASE
diff --git a/shippable.yml b/shippable.yml
index 94f2484..7b25879 100644
--- a/shippable.yml
+++ b/shippable.yml
@@ -49,7 +49,7 @@
       echo "POST_ACTION="$POST_ACTION
       if [[ $SKIP_CI == 'false' ]];
       then
-        mvn $PROFILE clean verify org.pitest:pitest-maven:mutationCoverage;
+        mvn -e $PROFILE clean verify org.pitest:pitest-maven:mutationCoverage;
 
         if [[ $POST_ACTION == 'check_survived_uncovered' \
                 && ( $(grep -RE "class='survived'" target/ | cat | wc -l) > 0 \
diff --git a/wercker.yml b/wercker.yml
index f17c486..12a8789 100644
--- a/wercker.yml
+++ b/wercker.yml
@@ -3,7 +3,7 @@
 build:
   steps:
   - script:
-      name: setup mvn local repo
+      name: setup maven local repo
       code: |
         export MAVEN_OPTS="-Dmaven.repo.local=${WERCKER_CACHE_DIR}"
         mvn -version
@@ -31,7 +31,7 @@
         export SKIP_CI=$(if [[ $(git diff --name-only HEAD HEAD~1 | grep -vE "$SKIP_FILES" | cat | wc -c) > 0 ]]; then echo false; else echo true; fi;)
         echo "SKIP_CI="$SKIP_CI
         if [[ $SKIP_CI == 'false' ]]; then
-          mvn clean install -Pno-validations
+          mvn -e clean install -Pno-validations
         else
           echo "build is skipped ..."
         fi
