You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by md...@apache.org on 2017/08/22 21:40:07 UTC
hbase git commit: HBASE-12349 Add custom error-prone module
Repository: hbase
Updated Branches:
refs/heads/master 5b42d8195 -> 51d458872
HBASE-12349 Add custom error-prone module
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/51d45887
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/51d45887
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/51d45887
Branch: refs/heads/master
Commit: 51d458872d703acdd853dd7b3149794d585ba285
Parents: 5b42d81
Author: Mike Drob <md...@apache.org>
Authored: Thu Jul 6 14:13:26 2017 -0700
Committer: Mike Drob <md...@apache.org>
Committed: Tue Aug 22 16:38:17 2017 -0500
----------------------------------------------------------------------
hbase-annotations/pom.xml | 4 +-
hbase-archetypes/pom.xml | 4 +-
hbase-assembly/pom.xml | 4 +-
hbase-assembly/src/main/assembly/src.xml | 4 +-
hbase-build-configuration/pom.xml | 99 ++++++++++++++++++++
hbase-build-support/hbase-error-prone/pom.xml | 61 ++++++++++++
.../hadoop/hbase/errorprone/AlwaysPasses.java | 44 +++++++++
hbase-build-support/pom.xml | 78 +++++++++++++++
hbase-client/pom.xml | 4 +-
hbase-common/pom.xml | 4 +-
hbase-endpoint/pom.xml | 4 +-
hbase-examples/pom.xml | 4 +-
hbase-external-blockcache/pom.xml | 4 +-
hbase-hadoop-compat/pom.xml | 4 +-
hbase-hadoop2-compat/pom.xml | 4 +-
hbase-it/pom.xml | 4 +-
hbase-metrics-api/pom.xml | 4 +-
hbase-metrics/pom.xml | 4 +-
hbase-prefix-tree/pom.xml | 4 +-
hbase-procedure/pom.xml | 4 +-
hbase-protocol-shaded/pom.xml | 4 +-
hbase-protocol/pom.xml | 4 +-
hbase-resource-bundle/pom.xml | 4 +-
hbase-rest/pom.xml | 4 +-
hbase-rsgroup/pom.xml | 4 +-
hbase-server/pom.xml | 4 +-
hbase-shaded/pom.xml | 4 +-
hbase-shell/pom.xml | 4 +-
hbase-spark-it/pom.xml | 4 +-
hbase-spark/pom.xml | 4 +-
hbase-testing-util/pom.xml | 4 +-
hbase-thrift/pom.xml | 4 +-
pom.xml | 36 ++-----
33 files changed, 348 insertions(+), 82 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-annotations/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-annotations/pom.xml b/hbase-annotations/pom.xml
index 4dcf143..067356b 100644
--- a/hbase-annotations/pom.xml
+++ b/hbase-annotations/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-annotations</artifactId>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-archetypes/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-archetypes/pom.xml b/hbase-archetypes/pom.xml
index 4741164..b0576ef 100644
--- a/hbase-archetypes/pom.xml
+++ b/hbase-archetypes/pom.xml
@@ -22,10 +22,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-archetypes</artifactId>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-assembly/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-assembly/pom.xml b/hbase-assembly/pom.xml
index 0d591a2..14074ad 100644
--- a/hbase-assembly/pom.xml
+++ b/hbase-assembly/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-assembly</artifactId>
<name>Apache HBase - Assembly</name>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-assembly/src/main/assembly/src.xml
----------------------------------------------------------------------
diff --git a/hbase-assembly/src/main/assembly/src.xml b/hbase-assembly/src/main/assembly/src.xml
index e5d3faf..436b1ff 100644
--- a/hbase-assembly/src/main/assembly/src.xml
+++ b/hbase-assembly/src/main/assembly/src.xml
@@ -33,6 +33,8 @@
<includes>
<include>org.apache.hbase:hbase-annotations</include>
<include>org.apache.hbase:hbase-archetypes</include>
+ <include>org.apache.hbase:hbase-build-support</include>
+ <include>org.apache.hbase:hbase-build-configuration</include>
<include>org.apache.hbase:hbase-assembly</include>
<include>org.apache.hbase:hbase-checkstyle</include>
<include>org.apache.hbase:hbase-client</include>
@@ -71,7 +73,7 @@
<!--Make sure this excludes is same as the hbase-hadoop2-compat
excludes below-->
<excludes>
- <exclude>target/</exclude>
+ <exclude>**/target/</exclude>
<exclude>test/</exclude>
<exclude>.classpath</exclude>
<exclude>.project</exclude>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-build-configuration/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/pom.xml b/hbase-build-configuration/pom.xml
new file mode 100644
index 0000000..0446d29
--- /dev/null
+++ b/hbase-build-configuration/pom.xml
@@ -0,0 +1,99 @@
+<?xml version="1.0"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <!--
+ /**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ -->
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>hbase</artifactId>
+ <groupId>org.apache.hbase</groupId>
+ <version>3.0.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
+ </parent>
+
+ <artifactId>hbase-build-configuration</artifactId>
+ <name>Apache HBase - Build Configuration</name>
+ <description>Configure the build-support artifacts for maven build</description>
+
+ <packaging>pom</packaging>
+ <build>
+ <plugins>
+ <plugin>
+ <!--Make it so assembly:single does nothing in here-->
+ <artifactId>maven-assembly-plugin</artifactId>
+ <configuration>
+ <skipAssembly>true</skipAssembly>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ <profiles>
+ <profile>
+ <id>errorProne</id>
+ <activation>
+ <activeByDefault>false</activeByDefault>
+ </activation>
+ <build>
+ <plugins>
+ <!-- Turn on error-prone -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>${maven.compiler.version}</version>
+ <configuration>
+ <compilerId>javac-with-errorprone</compilerId>
+ <forceJavacCompilerUse>true</forceJavacCompilerUse>
+ <showWarnings>true</showWarnings>
+ <compilerArgs>
+ <arg>-XepDisableWarningsInGeneratedCode</arg>
+ <arg>-Xep:FallThrough:OFF</arg> <!-- already in findbugs -->
+ </compilerArgs>
+ <annotationProcessorPaths>
+ <path>
+ <groupId>org.apache.hbase</groupId>
+ <artifactId>hbase-error-prone</artifactId>
+ <version>${project.version}</version>
+ </path>
+ </annotationProcessorPaths>
+ </configuration>
+ <dependencies>
+ <dependency>
+ <groupId>org.codehaus.plexus</groupId>
+ <artifactId>plexus-compiler-javac-errorprone</artifactId>
+ <version>${plexus.errorprone.javac.version}</version>
+ </dependency>
+ <!-- override plexus-compiler-javac-errorprone's dependency on
+ Error Prone with the latest version -->
+ <dependency>
+ <groupId>com.google.errorprone</groupId>
+ <artifactId>error_prone_core</artifactId>
+ <version>${error-prone.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.hbase</groupId>
+ <artifactId>hbase-error-prone</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+</project>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-build-support/hbase-error-prone/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-build-support/hbase-error-prone/pom.xml b/hbase-build-support/hbase-error-prone/pom.xml
new file mode 100644
index 0000000..ce84476
--- /dev/null
+++ b/hbase-build-support/hbase-error-prone/pom.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<!--
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+-->
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>hbase-build-support</artifactId>
+ <groupId>org.apache.hbase</groupId>
+ <version>3.0.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
+ </parent>
+ <groupId>org.apache.hbase</groupId>
+ <artifactId>hbase-error-prone</artifactId>
+ <version>3.0.0-SNAPSHOT</version>
+ <name>Apache HBase - Error Prone Rules</name>
+ <description>Module to hold error prone custom rules for HBase.</description>
+
+ <dependencies>
+ <dependency>
+ <groupId>com.google.errorprone</groupId>
+ <artifactId>error_prone_core</artifactId>
+ <version>${error-prone.version}</version>
+ <scope>provided</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>com.google.code.findbugs</groupId>
+ <artifactId>jsr305</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>com.google.errorprone</groupId>
+ <artifactId>error_prone_annotation</artifactId>
+ <version>${error-prone.version}</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.auto.service</groupId>
+ <artifactId>auto-service</artifactId>
+ <version>1.0-rc3</version>
+ <optional>true</optional>
+ </dependency>
+ </dependencies>
+</project>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-build-support/hbase-error-prone/src/main/java/org/apache/hadoop/hbase/errorprone/AlwaysPasses.java
----------------------------------------------------------------------
diff --git a/hbase-build-support/hbase-error-prone/src/main/java/org/apache/hadoop/hbase/errorprone/AlwaysPasses.java b/hbase-build-support/hbase-error-prone/src/main/java/org/apache/hadoop/hbase/errorprone/AlwaysPasses.java
new file mode 100644
index 0000000..5778f2d
--- /dev/null
+++ b/hbase-build-support/hbase-error-prone/src/main/java/org/apache/hadoop/hbase/errorprone/AlwaysPasses.java
@@ -0,0 +1,44 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.hadoop.hbase.errorprone;
+
+import com.google.auto.service.AutoService;
+import com.google.errorprone.BugPattern;
+import com.google.errorprone.VisitorState;
+import com.google.errorprone.bugpatterns.BugChecker;
+import com.google.errorprone.fixes.Fix;
+import com.google.errorprone.fixes.SuggestedFix;
+import com.google.errorprone.matchers.Description;
+import com.google.errorprone.matchers.Matcher;
+import com.sun.source.tree.CompilationUnitTree;
+import com.sun.source.tree.ImportTree;
+
+@AutoService(BugChecker.class)
+@BugPattern(name = "AlwaysPasses",
+ category = BugPattern.Category.JDK,
+ summary = "A placeholder rule that never matches.",
+ severity = BugPattern.SeverityLevel.ERROR,
+ suppressibility = BugPattern.Suppressibility.UNSUPPRESSIBLE,
+ linkType = BugPattern.LinkType.NONE)
+public class AlwaysPasses extends BugChecker implements BugChecker.CompilationUnitTreeMatcher {
+ @Override
+ public Description matchCompilationUnit(CompilationUnitTree tree, VisitorState state) {
+ return Description.NO_MATCH;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-build-support/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-build-support/pom.xml b/hbase-build-support/pom.xml
new file mode 100644
index 0000000..f13c3f1
--- /dev/null
+++ b/hbase-build-support/pom.xml
@@ -0,0 +1,78 @@
+<?xml version="1.0"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <!--
+ /**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ -->
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>hbase</artifactId>
+ <groupId>org.apache.hbase</groupId>
+ <version>3.0.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
+ </parent>
+
+ <artifactId>hbase-build-support</artifactId>
+ <name>Apache HBase - Build Support</name>
+ <description>Parent module for build-support artifacts</description>
+
+ <packaging>pom</packaging>
+ <properties>
+ <!-- Don't make a test-jar -->
+ <maven.test.skip>true</maven.test.skip>
+ <!-- Don't make a source-jar -->
+ <source.skip>true</source.skip>
+ <!-- Don't make a site -->
+ <maven.site.skip>true</maven.site.skip>
+ </properties>
+ <modules>
+ <module>hbase-error-prone</module>
+ </modules>
+ <build>
+ <pluginManagement>
+ <plugins>
+ <!-- This entry overrides the excludeFileFilter element in the findbugs
+ configuration of the hbase/pom.xml file. This override specifies that
+ the excluded-filter-file is found TWO levels up from a grandchild project. -->
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>findbugs-maven-plugin</artifactId>
+ <configuration>
+ <excludeFilterFile>${project.basedir}/../../dev-support/findbugs-exclude.xml</excludeFilterFile>
+ </configuration>
+ </plugin>
+ <plugin>
+ <!--Make it so assembly:single does nothing in here-->
+ <artifactId>maven-assembly-plugin</artifactId>
+ <configuration>
+ <skipAssembly>true</skipAssembly>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ <plugins>
+ <plugin>
+ <!--Make it so assembly:single does nothing in here-->
+ <artifactId>maven-assembly-plugin</artifactId>
+ <configuration>
+ <skipAssembly>true</skipAssembly>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-client/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-client/pom.xml b/hbase-client/pom.xml
index 45c43e9..23278bf 100644
--- a/hbase-client/pom.xml
+++ b/hbase-client/pom.xml
@@ -22,10 +22,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-client</artifactId>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-common/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-common/pom.xml b/hbase-common/pom.xml
index eb54617..84e120b 100644
--- a/hbase-common/pom.xml
+++ b/hbase-common/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-common</artifactId>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-endpoint/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-endpoint/pom.xml b/hbase-endpoint/pom.xml
index a324af1..29bd33b 100644
--- a/hbase-endpoint/pom.xml
+++ b/hbase-endpoint/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-endpoint</artifactId>
<name>Apache HBase - Coprocessor Endpoint</name>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-examples/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-examples/pom.xml b/hbase-examples/pom.xml
index 0522367..7a6a51a 100644
--- a/hbase-examples/pom.xml
+++ b/hbase-examples/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-examples</artifactId>
<name>Apache HBase - Examples</name>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-external-blockcache/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-external-blockcache/pom.xml b/hbase-external-blockcache/pom.xml
index 657dea7..beab0fd 100644
--- a/hbase-external-blockcache/pom.xml
+++ b/hbase-external-blockcache/pom.xml
@@ -23,10 +23,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-external-blockcache</artifactId>
<name>Apache HBase - External Block Cache</name>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-hadoop-compat/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-hadoop-compat/pom.xml b/hbase-hadoop-compat/pom.xml
index 6c2ab2a..a027e5a 100644
--- a/hbase-hadoop-compat/pom.xml
+++ b/hbase-hadoop-compat/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-hadoop-compat</artifactId>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-hadoop2-compat/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-hadoop2-compat/pom.xml b/hbase-hadoop2-compat/pom.xml
index 3063995..735b272 100644
--- a/hbase-hadoop2-compat/pom.xml
+++ b/hbase-hadoop2-compat/pom.xml
@@ -19,10 +19,10 @@ limitations under the License.
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-hadoop2-compat</artifactId>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-it/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-it/pom.xml b/hbase-it/pom.xml
index eba4440..783d9a2 100644
--- a/hbase-it/pom.xml
+++ b/hbase-it/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-it</artifactId>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-metrics-api/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-metrics-api/pom.xml b/hbase-metrics-api/pom.xml
index 2aa5b0d..325e563 100644
--- a/hbase-metrics-api/pom.xml
+++ b/hbase-metrics-api/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-metrics-api</artifactId>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-metrics/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-metrics/pom.xml b/hbase-metrics/pom.xml
index 70f0ed0..341bb63 100644
--- a/hbase-metrics/pom.xml
+++ b/hbase-metrics/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-metrics</artifactId>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-prefix-tree/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-prefix-tree/pom.xml b/hbase-prefix-tree/pom.xml
index a44a59e..c9a4dec 100644
--- a/hbase-prefix-tree/pom.xml
+++ b/hbase-prefix-tree/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-prefix-tree</artifactId>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-procedure/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-procedure/pom.xml b/hbase-procedure/pom.xml
index 9a68163..67f7691 100644
--- a/hbase-procedure/pom.xml
+++ b/hbase-procedure/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-procedure</artifactId>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-protocol-shaded/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-protocol-shaded/pom.xml b/hbase-protocol-shaded/pom.xml
index 4c72eca..d7682b2 100644
--- a/hbase-protocol-shaded/pom.xml
+++ b/hbase-protocol-shaded/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-protocol-shaded</artifactId>
<name>Apache HBase - Shaded Protocol</name>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-protocol/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-protocol/pom.xml b/hbase-protocol/pom.xml
index 69e1baa..9e5661a 100644
--- a/hbase-protocol/pom.xml
+++ b/hbase-protocol/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-protocol</artifactId>
<name>Apache HBase - Protocol</name>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-resource-bundle/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-resource-bundle/pom.xml b/hbase-resource-bundle/pom.xml
index 67fe77f..07b27d5 100644
--- a/hbase-resource-bundle/pom.xml
+++ b/hbase-resource-bundle/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-resource-bundle</artifactId>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-rest/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-rest/pom.xml b/hbase-rest/pom.xml
index a4f11ff..3af9829 100644
--- a/hbase-rest/pom.xml
+++ b/hbase-rest/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-rest</artifactId>
<name>Apache HBase - Rest</name>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-rsgroup/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-rsgroup/pom.xml b/hbase-rsgroup/pom.xml
index bbb489d..91f6fc9 100644
--- a/hbase-rsgroup/pom.xml
+++ b/hbase-rsgroup/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-rsgroup</artifactId>
<name>Apache HBase - RSGroup</name>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-server/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-server/pom.xml b/hbase-server/pom.xml
index e377874..890ba2b 100644
--- a/hbase-server/pom.xml
+++ b/hbase-server/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-server</artifactId>
<name>Apache HBase - Server</name>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-shaded/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-shaded/pom.xml b/hbase-shaded/pom.xml
index 6bccc7d..25f3c59 100644
--- a/hbase-shaded/pom.xml
+++ b/hbase-shaded/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-shaded</artifactId>
<name>Apache HBase - Shaded</name>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-shell/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-shell/pom.xml b/hbase-shell/pom.xml
index 1928ca8..f6127ac 100644
--- a/hbase-shell/pom.xml
+++ b/hbase-shell/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-shell</artifactId>
<name>Apache HBase - Shell</name>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-spark-it/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-spark-it/pom.xml b/hbase-spark-it/pom.xml
index c797395..f1f5e44 100644
--- a/hbase-spark-it/pom.xml
+++ b/hbase-spark-it/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-spark-it</artifactId>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-spark/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-spark/pom.xml b/hbase-spark/pom.xml
index d294835..51e67fa 100644
--- a/hbase-spark/pom.xml
+++ b/hbase-spark/pom.xml
@@ -22,10 +22,10 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-spark</artifactId>
<name>Apache HBase - Spark</name>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-testing-util/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-testing-util/pom.xml b/hbase-testing-util/pom.xml
index 9b8733f..f55ee95 100644
--- a/hbase-testing-util/pom.xml
+++ b/hbase-testing-util/pom.xml
@@ -21,10 +21,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-testing-util</artifactId>
<name>Apache HBase - Testing Util</name>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/hbase-thrift/pom.xml
----------------------------------------------------------------------
diff --git a/hbase-thrift/pom.xml b/hbase-thrift/pom.xml
index 05cf261..9d7a4b5 100644
--- a/hbase-thrift/pom.xml
+++ b/hbase-thrift/pom.xml
@@ -23,10 +23,10 @@
-->
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>hbase</artifactId>
+ <artifactId>hbase-build-configuration</artifactId>
<groupId>org.apache.hbase</groupId>
<version>3.0.0-SNAPSHOT</version>
- <relativePath>..</relativePath>
+ <relativePath>../hbase-build-configuration</relativePath>
</parent>
<artifactId>hbase-thrift</artifactId>
<name>Apache HBase - Thrift</name>
http://git-wip-us.apache.org/repos/asf/hbase/blob/51d45887/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 0d7c95d..6f7079e 100755
--- a/pom.xml
+++ b/pom.xml
@@ -61,6 +61,8 @@
</licenses>
<modules>
+ <module>hbase-build-support</module>
+ <module>hbase-build-configuration</module>
<module>hbase-resource-bundle</module>
<module>hbase-server</module>
<module>hbase-thrift</module>
@@ -1424,6 +1426,7 @@
<buildnumber.maven.version>1.4</buildnumber.maven.version>
<checkstyle.version>6.18</checkstyle.version>
<exec.maven.version>1.6.0</exec.maven.version>
+ <error-prone.version>2.0.21</error-prone.version>
<findbugs-annotations>1.3.9-1</findbugs-annotations>
<findbugs.maven.version>3.0.4</findbugs.maven.version>
<jamon.plugin.version>2.4.2</jamon.plugin.version>
@@ -1441,6 +1444,7 @@
<maven.site.version>3.4</maven.site.version>
<maven.source.version>3.0.1</maven.source.version>
<os.maven.version>1.5.0.Final</os.maven.version>
+ <plexus.errorprone.javac.version>2.8.2</plexus.errorprone.javac.version>
<scala.maven.version>3.2.2</scala.maven.version>
<scalatest.maven.version>1.0</scalatest.maven.version>
<spotbugs.version>3.1.0-RC3</spotbugs.version>
@@ -1526,6 +1530,11 @@
</dependency>
<dependency>
<groupId>org.apache.hbase</groupId>
+ <artifactId>hbase-error-prone</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.hbase</groupId>
<artifactId>hbase-common</artifactId>
<version>${project.version}</version>
</dependency>
@@ -3134,33 +3143,6 @@
</plugins>
</build>
</profile>
- <profile>
- <id>errorProne</id>
- <activation>
- <activeByDefault>false</activeByDefault>
- </activation>
- <build>
- <plugins>
- <!-- Turn on error-prone -->
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>${maven.compiler.version}</version>
- <configuration>
- <compilerId>javac-with-errorprone</compilerId>
- <forceJavacCompilerUse>true</forceJavacCompilerUse>
- </configuration>
- <dependencies>
- <dependency>
- <groupId>org.codehaus.plexus</groupId>
- <artifactId>plexus-compiler-javac-errorprone</artifactId>
- <version>2.5</version>
- </dependency>
- </dependencies>
- </plugin>
- </plugins>
- </build>
- </profile>
</profiles>
<!-- See http://jira.codehaus.org/browse/MSITE-443 why the settings need to be here and not in pluginManagement. -->
<reporting>