I have started to get this when I am trying to build hbase-master with JDK8:
[INFO] Restricted to JDK 1.7 yet jdk.tools:jdk.tools:jar:1.7:system contains com/sun/xml/internal/xsom/XSNotation.class targeted to JDK 1.8[WARNING] Rule 2: org.apache.maven.plugins.enforcer.EnforceBytecodeVersion failed with message: HBase has unsupported dependencies. HBase requires that all dependencies be compiled with version 1.7 or earlier of the JDK to properly build from source. You appear to be using a newer dependency. You can use either "mvn -version" or "mvn enforcer:display-info" to verify what version is active. Non-release builds can temporarily build with a newer JDK version by setting the 'compileSource' property (eg. mvn -DcompileSource=1.8 clean package). Found Banned Dependency: jdk.tools:jdk.tools:jar:1.7 Use 'mvn dependency:tree' to locate the source of the banned dependencies. This was added with HBASE-13344 in the master branch only. How are we supposed to build with JDK8 now? When I follow the suggestion (mvn -DcompileSource=1.8) I get other compile errors: [ERROR] /home/lars/dev/hbase-master/hbase-server/src/test/java/org/apache/hadoop/hbase/wal/WALPerformanceEvaluation.java:[310,29] no suitable method found for startSpan(java.lang.String,trace ? Sa[...]NEVER) method org.apache.htrace.Trace.startSpan(java.lang.String,org.apache.htrace.Span) is not applicable (argument mismatch; bad type in conditional expression org.apache.htrace.Sampler<capture#1 of ?> cannot be converted to org.apache.htrace.Span) method org.apache.htrace.Trace.startSpan(java.lang.String,org.apache.htrace.TraceInfo) is not applicable ... So it seems that right now HBase master cannot be built with JDK8 _at all_. We need to fix this. -- Lars
