diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 00000000..24e6a65a
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,30 @@
+notifications:
+ email:
+ recipients:
+ - dev@rocketmq.apache.org
+ on_success: change
+ on_failure: always
+
+language: java
+
+matrix:
+ include:
+ # On OSX, run with default JDK only.
+ # - os: osx
+ # On Linux, run with specific JDKs only.
+ - os: linux
+ env: CUSTOM_JDK="oraclejdk8"
+
+before_install:
+ - echo 'MAVEN_OPTS="$MAVEN_OPTS -Xmx1024m -XX:MaxPermSize=512m -XX:+BytecodeVerificationLocal"' >> ~/.mavenrc
+ - cat ~/.mavenrc
+ - if [ "$TRAVIS_OS_NAME" == "osx" ]; then export JAVA_HOME=$(/usr/libexec/java_home); fi
+ - if [ "$TRAVIS_OS_NAME" == "linux" ]; then jdk_switcher use "$CUSTOM_JDK"; fi
+
+script:
+ - travis_retry mvn -B clean apache-rat:check
+ - travis_retry mvn -B package jacoco:report coveralls:report
+
+after_success:
+ # - mvn clean install -Pit-test
+ - mvn sonar:sonar -Psonar-apache
diff --git a/pom.xml b/pom.xml
index 1e918a96..3ce07926 100644
--- a/pom.xml
+++ b/pom.xml
@@ -101,9 +101,116 @@
+
+ org.jacoco
+ jacoco-maven-plugin
+ 0.7.8
+
+
+ default-prepare-agent
+
+ prepare-agent
+
+
+ ${project.build.directory}/jacoco.exec
+
+
+
+ default-prepare-agent-integration
+ pre-integration-test
+
+ prepare-agent-integration
+
+
+ ${project.build.directory}/jacoco-it.exec
+ failsafeArgLine
+
+
+
+ default-report
+
+ report
+
+
+
+ default-report-integration
+
+ report-integration
+
+
+
+
+
+ maven-surefire-plugin
+ 2.19.1
+
+ 1
+ 1
+ true
+
+ **/IT*.java
+
+
+
+
+ org.codehaus.mojo
+ findbugs-maven-plugin
+ 3.0.4
+
+
+ org.sonarsource.scanner.maven
+ sonar-maven-plugin
+ 3.0.2
+
+
+ org.apache.rat
+ apache-rat-plugin
+ 0.12
+
+
+ .gitignore
+ .travis.yml
+ CONTRIBUTING.md
+ **/README.md
+ **/README_zh_CN.md
+ .github/**
+ src/test/resources/certs/*
+ src/test/**/*.log
+ src/test/resources/META-INF/service/*
+ **/target/**
+ */*.iml
+ **/*/spring.factories
+ **/application.properties
+
+
+
+
+ org.eluder.coveralls
+ coveralls-maven-plugin
+ 4.3.0
+
+
+
+
+
+ maven-assembly-plugin
+ 3.0.0
+
+
+
+
+
+ sonar-apache
+
+
+ https://builds.apache.org/analysis
+
+
+
+
rocketmq-spring-boot-parent
rocketmq-spring-boot
diff --git a/rocketmq-spring-boot-parent/pom.xml b/rocketmq-spring-boot-parent/pom.xml
index 387f5eb4..a3c698ad 100644
--- a/rocketmq-spring-boot-parent/pom.xml
+++ b/rocketmq-spring-boot-parent/pom.xml
@@ -52,6 +52,10 @@
${java.version}
${java.version}
-Xdoclint:none
+ jacoco
+
+ ${project.basedir}/../test/target/jacoco-it.exec
+ file:**/generated-sources/**,**/test/**
@@ -148,29 +152,4 @@
-
-
-
- org.apache.maven.plugins
- maven-checkstyle-plugin
- 2.17
-
-
- validate
- validate
-
- src/main/resources
- style/rmq_checkstyle.xml
- UTF-8
- true
- true
-
-
- check
-
-
-
-
-
-
diff --git a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/ListenerContainerConfiguration.java b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/ListenerContainerConfiguration.java
index b0bb935e..3a9e070b 100644
--- a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/ListenerContainerConfiguration.java
+++ b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/ListenerContainerConfiguration.java
@@ -26,7 +26,6 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.aop.framework.AopProxyUtils;
-import org.springframework.aop.support.AopUtils;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.SmartInitializingSingleton;
import org.springframework.beans.factory.support.BeanDefinitionValidationException;
@@ -128,4 +127,4 @@ private void validate(RocketMQMessageListener annotation) {
"Bad annotation definition in @RocketMQMessageListener, messageModel BROADCASTING does not support ORDERLY message!");
}
}
-}
\ No newline at end of file
+}
diff --git a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/support/DefaultRocketMQListenerContainer.java b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/support/DefaultRocketMQListenerContainer.java
index bf2121cd..a82a05c5 100644
--- a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/support/DefaultRocketMQListenerContainer.java
+++ b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/support/DefaultRocketMQListenerContainer.java
@@ -37,7 +37,6 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.aop.framework.AopProxyUtils;
-import org.springframework.aop.support.AopUtils;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.context.SmartLifecycle;
import org.springframework.util.Assert;