Sonar-custom-rules-examples/java-custom-rules unit testcases failed Caused by: org.sonar.sslr.grammar.GrammarException

I run the sonar-custom-rules-examples\java-custom-rules(code clone from github https://github.com/SonarSource/sonar-custom-rules-examples/master ) unit testcases, and testcases all failed because of following exception.(<sslr.version>1.21</sslr.version>)

exception detail:

java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
	at com.google.common.base.Throwables.propagate(Throwables.java:160)
	at com.sonar.sslr.impl.typed.ReflectionUtils.invokeMethod(ReflectionUtils.java:38)
	at com.sonar.sslr.api.typed.ActionParser.<init>(ActionParser.java:79)
	at org.sonar.java.ast.parser.JavaParser.<init>(JavaParser.java:37)
	at org.sonar.java.ast.parser.JavaParser.createParser(JavaParser.java:41)
	at org.sonar.java.ast.JavaAstScanner.scanSingleFileForTests(JavaAstScanner.java:136)
	at org.sonar.java.checks.verifier.JavaCheckVerifier.scanFile(JavaCheckVerifier.java:280)
	at org.sonar.java.checks.verifier.JavaCheckVerifier.scanFile(JavaCheckVerifier.java:267)
	at org.sonar.java.checks.verifier.JavaCheckVerifier.scanFile(JavaCheckVerifier.java:221)
	at org.sonar.java.checks.verifier.JavaCheckVerifier.verify(JavaCheckVerifier.java:105)
	at org.sonar.samples.java.checks.AvoidAnnotationCheckTest.detected(AvoidAnnotationCheckTest.java:39)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:69)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:48)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:292)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:157)
	at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
	at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
	at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
	at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)
Caused by: java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.sonar.sslr.impl.typed.ReflectionUtils.invokeMethod(ReflectionUtils.java:36)
	... 31 more
Caused by: org.sonar.sslr.grammar.GrammarException: The rule 'f.newTuple20(Object, Object)' has already been defined somewhere in the grammar.
	at org.sonar.sslr.grammar.GrammarBuilder$RuleBuilder.is(GrammarBuilder.java:285)
	at com.sonar.sslr.impl.typed.GrammarBuilderInterceptor.replaceByRule(GrammarBuilderInterceptor.java:159)
	at com.sonar.sslr.api.typed.ActionParser$ActionMethodInterceptor.intercept(ActionParser.java:138)
	at org.sonar.java.ast.parser.TreeFactory$$EnhancerByCGLIB$$311c1427.newTuple20(<generated>)
	at org.sonar.java.ast.parser.JavaGrammar.ARGUMENTS(JavaGrammar.java:1394)
	at org.sonar.java.ast.parser.JavaGrammar$$EnhancerByCGLIB$$baf8498a.CGLIB$ARGUMENTS$123(<generated>)
	at org.sonar.java.ast.parser.JavaGrammar$$EnhancerByCGLIB$$baf8498a$$FastClassByCGLIB$$ba9b31ec.invoke(<generated>)
	at net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
	at com.sonar.sslr.impl.typed.GrammarBuilderInterceptor.intercept(GrammarBuilderInterceptor.java:76)
	at org.sonar.java.ast.parser.JavaGrammar$$EnhancerByCGLIB$$baf8498a.ARGUMENTS(<generated>)
	... 36 more

Hello @mario25,

Sorry for the long delay answering you. Did you fix your issue?

We just updated the custom-rules example project to support latest changes of SonarJava (release 6.2 and support of new SQ LTS 7.9).

Could you give it another try? Everything should work as of today.

Regards,
Michael