Revert "HBASE-17056 Remove checked in PB generated files Selective add of dependency on" Revert for now. Build unstable and some interesting issues around CLASSPATH
This reverts commit df93c13fd21a3f34aa3851893d715cbc4edb555b. Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/6786b2b6 Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/6786b2b6 Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/6786b2b6 Branch: refs/heads/HBASE-18147 Commit: 6786b2b63e9ec7fe45c5ed800a54f4f80358c3c3 Parents: 68436c9 Author: Michael Stack <st...@apache.org> Authored: Thu Jul 6 21:58:32 2017 -0700 Committer: Michael Stack <st...@apache.org> Committed: Thu Jul 6 21:58:32 2017 -0700 ---------------------------------------------------------------------- hbase-client/pom.xml | 4 - hbase-endpoint/README.txt | 25 +- hbase-endpoint/pom.xml | 259 +- .../example/generated/BulkDeleteProtos.java | 1792 + .../generated/ColumnAggregationProtos.java | 1277 + .../ColumnAggregationWithErrorsProtos.java | 1290 + ...ColumnAggregationWithNullResponseProtos.java | 1283 + .../DummyRegionServerEndpointProtos.java | 1225 + .../IncrementCounterProcessorTestProtos.java | 4059 + .../protobuf/generated/AggregateProtos.java | 2375 + .../generated/SecureBulkLoadProtos.java | 2088 + hbase-examples/README.txt | 27 +- hbase-examples/pom.xml | 312 +- .../example/generated/ExampleProtos.java | 1149 + hbase-procedure/pom.xml | 4 - hbase-protocol-shaded/README.txt | 49 +- hbase-protocol-shaded/pom.xml | 283 +- .../com/google/protobuf/AbstractMessage.java | 646 + .../google/protobuf/AbstractMessageLite.java | 383 + .../com/google/protobuf/AbstractParser.java | 258 + .../google/protobuf/AbstractProtobufList.java | 180 + .../hbase/shaded/com/google/protobuf/Any.java | 899 + .../com/google/protobuf/AnyOrBuilder.java | 70 + .../shaded/com/google/protobuf/AnyProto.java | 59 + .../hbase/shaded/com/google/protobuf/Api.java | 2473 + .../com/google/protobuf/ApiOrBuilder.java | 258 + .../shaded/com/google/protobuf/ApiProto.java | 98 + .../com/google/protobuf/BlockingRpcChannel.java | 51 + .../com/google/protobuf/BlockingService.java | 64 + .../shaded/com/google/protobuf/BoolValue.java | 452 + .../com/google/protobuf/BoolValueOrBuilder.java | 18 + .../com/google/protobuf/BooleanArrayList.java | 272 + .../com/google/protobuf/ByteBufferWriter.java | 185 + .../shaded/com/google/protobuf/ByteInput.java | 81 + .../google/protobuf/ByteInputByteString.java | 251 + .../shaded/com/google/protobuf/ByteOutput.java | 116 + .../shaded/com/google/protobuf/ByteString.java | 1565 + .../shaded/com/google/protobuf/BytesValue.java | 454 + .../google/protobuf/BytesValueOrBuilder.java | 18 + .../com/google/protobuf/CodedInputStream.java | 3549 + .../com/google/protobuf/CodedOutputStream.java | 3001 + .../com/google/protobuf/DescriptorProtos.java | 39141 ++++++++ .../shaded/com/google/protobuf/Descriptors.java | 2547 + .../com/google/protobuf/DoubleArrayList.java | 273 + .../shaded/com/google/protobuf/DoubleValue.java | 454 + .../google/protobuf/DoubleValueOrBuilder.java | 18 + .../shaded/com/google/protobuf/Duration.java | 618 + .../com/google/protobuf/DurationOrBuilder.java | 33 + .../com/google/protobuf/DurationProto.java | 59 + .../com/google/protobuf/DynamicMessage.java | 684 + .../hbase/shaded/com/google/protobuf/Empty.java | 386 + .../com/google/protobuf/EmptyOrBuilder.java | 9 + .../shaded/com/google/protobuf/EmptyProto.java | 58 + .../hbase/shaded/com/google/protobuf/Enum.java | 1745 + .../com/google/protobuf/EnumOrBuilder.java | 157 + .../shaded/com/google/protobuf/EnumValue.java | 1044 + .../com/google/protobuf/EnumValueOrBuilder.java | 80 + .../com/google/protobuf/ExperimentalApi.java | 66 + .../shaded/com/google/protobuf/Extension.java | 86 + .../com/google/protobuf/ExtensionLite.java | 63 + .../com/google/protobuf/ExtensionRegistry.java | 396 + .../protobuf/ExtensionRegistryFactory.java | 95 + .../google/protobuf/ExtensionRegistryLite.java | 227 + .../hbase/shaded/com/google/protobuf/Field.java | 2450 + .../shaded/com/google/protobuf/FieldMask.java | 903 + .../com/google/protobuf/FieldMaskOrBuilder.java | 44 + .../com/google/protobuf/FieldMaskProto.java | 59 + .../com/google/protobuf/FieldOrBuilder.java | 189 + .../shaded/com/google/protobuf/FieldSet.java | 909 + .../com/google/protobuf/FloatArrayList.java | 272 + .../shaded/com/google/protobuf/FloatValue.java | 454 + .../google/protobuf/FloatValueOrBuilder.java | 18 + .../com/google/protobuf/GeneratedMessage.java | 3047 + .../google/protobuf/GeneratedMessageLite.java | 2419 + .../com/google/protobuf/GeneratedMessageV3.java | 2838 + .../shaded/com/google/protobuf/Int32Value.java | 451 + .../google/protobuf/Int32ValueOrBuilder.java | 18 + .../shaded/com/google/protobuf/Int64Value.java | 452 + .../google/protobuf/Int64ValueOrBuilder.java | 18 + .../com/google/protobuf/IntArrayList.java | 272 + .../shaded/com/google/protobuf/Internal.java | 751 + .../InvalidProtocolBufferException.java | 146 + .../shaded/com/google/protobuf/LazyField.java | 154 + .../com/google/protobuf/LazyFieldLite.java | 437 + .../google/protobuf/LazyStringArrayList.java | 423 + .../com/google/protobuf/LazyStringList.java | 174 + .../shaded/com/google/protobuf/ListValue.java | 814 + .../com/google/protobuf/ListValueOrBuilder.java | 53 + .../com/google/protobuf/LongArrayList.java | 272 + .../shaded/com/google/protobuf/MapEntry.java | 449 + .../com/google/protobuf/MapEntryLite.java | 226 + .../shaded/com/google/protobuf/MapField.java | 624 + .../com/google/protobuf/MapFieldLite.java | 224 + .../shaded/com/google/protobuf/Message.java | 292 + .../shaded/com/google/protobuf/MessageLite.java | 341 + .../google/protobuf/MessageLiteOrBuilder.java | 60 + .../google/protobuf/MessageLiteToString.java | 239 + .../com/google/protobuf/MessageOrBuilder.java | 143 + .../com/google/protobuf/MessageReflection.java | 990 + .../shaded/com/google/protobuf/Method.java | 1541 + .../com/google/protobuf/MethodOrBuilder.java | 142 + .../hbase/shaded/com/google/protobuf/Mixin.java | 812 + .../com/google/protobuf/MixinOrBuilder.java | 47 + .../com/google/protobuf/MutabilityOracle.java | 48 + .../com/google/protobuf/NioByteString.java | 291 + .../shaded/com/google/protobuf/NullValue.java | 108 + .../shaded/com/google/protobuf/Option.java | 818 + .../com/google/protobuf/OptionOrBuilder.java | 67 + .../shaded/com/google/protobuf/Parser.java | 272 + .../com/google/protobuf/ProtobufArrayList.java | 105 + .../google/protobuf/ProtocolMessageEnum.java | 59 + .../com/google/protobuf/ProtocolStringList.java | 48 + .../google/protobuf/RepeatedFieldBuilder.java | 708 + .../google/protobuf/RepeatedFieldBuilderV3.java | 708 + .../com/google/protobuf/RopeByteString.java | 897 + .../shaded/com/google/protobuf/RpcCallback.java | 47 + .../shaded/com/google/protobuf/RpcChannel.java | 71 + .../com/google/protobuf/RpcController.java | 118 + .../shaded/com/google/protobuf/RpcUtil.java | 136 + .../shaded/com/google/protobuf/Service.java | 117 + .../com/google/protobuf/ServiceException.java | 52 + .../com/google/protobuf/SingleFieldBuilder.java | 241 + .../google/protobuf/SingleFieldBuilderV3.java | 241 + .../com/google/protobuf/SmallSortedMap.java | 673 + .../com/google/protobuf/SourceContext.java | 539 + .../google/protobuf/SourceContextOrBuilder.java | 29 + .../com/google/protobuf/SourceContextProto.java | 60 + .../shaded/com/google/protobuf/StringValue.java | 532 + .../google/protobuf/StringValueOrBuilder.java | 27 + .../shaded/com/google/protobuf/Struct.java | 705 + .../com/google/protobuf/StructOrBuilder.java | 63 + .../shaded/com/google/protobuf/StructProto.java | 103 + .../shaded/com/google/protobuf/Syntax.java | 123 + .../shaded/com/google/protobuf/TextFormat.java | 2108 + .../com/google/protobuf/TextFormatEscaper.java | 137 + .../protobuf/TextFormatParseInfoTree.java | 226 + .../protobuf/TextFormatParseLocation.java | 104 + .../shaded/com/google/protobuf/Timestamp.java | 616 + .../com/google/protobuf/TimestampOrBuilder.java | 32 + .../com/google/protobuf/TimestampProto.java | 59 + .../hbase/shaded/com/google/protobuf/Type.java | 1967 + .../com/google/protobuf/TypeOrBuilder.java | 192 + .../shaded/com/google/protobuf/TypeProto.java | 141 + .../shaded/com/google/protobuf/UInt32Value.java | 451 + .../google/protobuf/UInt32ValueOrBuilder.java | 18 + .../shaded/com/google/protobuf/UInt64Value.java | 452 + .../google/protobuf/UInt64ValueOrBuilder.java | 18 + .../protobuf/UninitializedMessageException.java | 99 + .../com/google/protobuf/UnknownFieldSet.java | 1042 + .../google/protobuf/UnknownFieldSetLite.java | 432 + .../protobuf/UnmodifiableLazyStringList.java | 210 + .../google/protobuf/UnsafeByteOperations.java | 131 + .../shaded/com/google/protobuf/UnsafeUtil.java | 295 + .../hbase/shaded/com/google/protobuf/Utf8.java | 1764 + .../hbase/shaded/com/google/protobuf/Value.java | 1410 + .../com/google/protobuf/ValueOrBuilder.java | 98 + .../shaded/com/google/protobuf/WireFormat.java | 260 + .../com/google/protobuf/WrappersProto.java | 153 + .../google/protobuf/compiler/PluginProtos.java | 5424 ++ .../protobuf/generated/TestProcedureProtos.java | 608 + .../ipc/protobuf/generated/TestProtos.java | 2987 + .../generated/TestRpcServiceProtos.java | 575 + .../protobuf/generated/AccessControlProtos.java | 11171 +++ .../shaded/protobuf/generated/AdminProtos.java | 30634 ++++++ .../shaded/protobuf/generated/BackupProtos.java | 7013 ++ .../shaded/protobuf/generated/CellProtos.java | 2287 + .../shaded/protobuf/generated/ClientProtos.java | 42367 +++++++++ .../protobuf/generated/ClusterIdProtos.java | 668 + .../protobuf/generated/ClusterStatusProtos.java | 15191 +++ .../protobuf/generated/ComparatorProtos.java | 5719 ++ .../protobuf/generated/EncryptionProtos.java | 980 + .../protobuf/generated/ErrorHandlingProtos.java | 2997 + .../shaded/protobuf/generated/FSProtos.java | 1311 + .../shaded/protobuf/generated/FilterProtos.java | 18739 ++++ .../shaded/protobuf/generated/HBaseProtos.java | 19346 ++++ .../shaded/protobuf/generated/HFileProtos.java | 2449 + .../protobuf/generated/LoadBalancerProtos.java | 524 + .../protobuf/generated/LockServiceProtos.java | 7595 ++ .../protobuf/generated/MapReduceProtos.java | 1804 + .../generated/MasterProcedureProtos.java | 31266 +++++++ .../shaded/protobuf/generated/MasterProtos.java | 82418 +++++++++++++++++ .../protobuf/generated/ProcedureProtos.java | 7844 ++ .../shaded/protobuf/generated/QuotaProtos.java | 14525 +++ .../shaded/protobuf/generated/RPCProtos.java | 8299 ++ .../generated/RegionNormalizerProtos.java | 524 + .../generated/RegionServerStatusProtos.java | 11621 +++ .../protobuf/generated/ReplicationProtos.java | 12909 +++ .../protobuf/generated/SnapshotProtos.java | 6491 ++ .../protobuf/generated/TracingProtos.java | 628 + .../shaded/protobuf/generated/WALProtos.java | 12308 +++ .../protobuf/generated/ZooKeeperProtos.java | 4717 + hbase-protocol/README.txt | 16 +- hbase-protocol/pom.xml | 266 +- .../protobuf/generated/PingProtos.java | 4890 + .../protobuf/generated/TestProcedureProtos.java | 530 + .../ipc/protobuf/generated/TestProtos.java | 2778 + .../generated/TestRpcServiceProtos.java | 568 + .../protobuf/generated/AccessControlProtos.java | 10656 +++ .../hbase/protobuf/generated/AdminProtos.java | 24326 +++++ .../generated/AuthenticationProtos.java | 4659 + .../hbase/protobuf/generated/CellProtos.java | 2243 + .../hbase/protobuf/generated/ClientProtos.java | 41409 +++++++++ .../protobuf/generated/ClusterIdProtos.java | 628 + .../protobuf/generated/ClusterStatusProtos.java | 14975 +++ .../protobuf/generated/ComparatorProtos.java | 5419 ++ .../protobuf/generated/EncryptionProtos.java | 954 + .../protobuf/generated/ErrorHandlingProtos.java | 2895 + .../hbase/protobuf/generated/FSProtos.java | 1235 + .../hbase/protobuf/generated/FilterProtos.java | 17809 ++++ .../hbase/protobuf/generated/HBaseProtos.java | 19893 ++++ .../hbase/protobuf/generated/HFileProtos.java | 2403 + .../protobuf/generated/LoadBalancerProtos.java | 485 + .../protobuf/generated/MapReduceProtos.java | 1737 + .../generated/MultiRowMutationProtos.java | 2458 + .../hbase/protobuf/generated/QuotaProtos.java | 7342 ++ .../hbase/protobuf/generated/RPCProtos.java | 6299 ++ .../protobuf/generated/RowProcessorProtos.java | 1701 + .../protobuf/generated/SnapshotProtos.java | 4789 + .../hbase/protobuf/generated/TracingProtos.java | 591 + .../generated/VisibilityLabelsProtos.java | 6649 ++ .../hbase/protobuf/generated/WALProtos.java | 12108 +++ .../protobuf/generated/ZooKeeperProtos.java | 8410 ++ hbase-rest/README.txt | 21 +- hbase-rest/pom.xml | 67 +- .../rest/protobuf/generated/CellMessage.java | 731 + .../rest/protobuf/generated/CellSetMessage.java | 1521 + .../protobuf/generated/ColumnSchemaMessage.java | 1904 + .../generated/NamespacePropertiesMessage.java | 1394 + .../protobuf/generated/NamespacesMessage.java | 547 + .../rest/protobuf/generated/ScannerMessage.java | 1578 + .../generated/StorageClusterStatusMessage.java | 3955 + .../protobuf/generated/TableInfoMessage.java | 1802 + .../protobuf/generated/TableListMessage.java | 547 + .../protobuf/generated/TableSchemaMessage.java | 2125 + .../rest/protobuf/generated/VersionMessage.java | 1147 + hbase-rsgroup/README.txt | 29 +- hbase-rsgroup/pom.xml | 68 +- .../protobuf/generated/RSGroupAdminProtos.java | 13570 +++ .../hbase/protobuf/generated/RSGroupProtos.java | 1331 + hbase-server/pom.xml | 12 - hbase-spark/README.txt | 32 +- hbase-spark/pom.xml | 1259 +- .../protobuf/generated/SparkFilterProtos.java | 2006 + pom.xml | 17 +- src/main/asciidoc/_chapters/protobuf.adoc | 10 +- 245 files changed, 745280 insertions(+), 1182 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/6786b2b6/hbase-client/pom.xml ---------------------------------------------------------------------- diff --git a/hbase-client/pom.xml b/hbase-client/pom.xml index 1c43aea..cc1143d 100644 --- a/hbase-client/pom.xml +++ b/hbase-client/pom.xml @@ -87,10 +87,6 @@ </build> <dependencies> - <dependency> - <groupId>org.apache.hbase.thirdparty</groupId> - <artifactId>hbase-shaded-protobuf</artifactId> - </dependency> <!-- Intra-project dependencies --> <dependency> <groupId>org.apache.hbase</groupId> http://git-wip-us.apache.org/repos/asf/hbase/blob/6786b2b6/hbase-endpoint/README.txt ---------------------------------------------------------------------- diff --git a/hbase-endpoint/README.txt b/hbase-endpoint/README.txt index 2d2cb4b..861a776 100644 --- a/hbase-endpoint/README.txt +++ b/hbase-endpoint/README.txt @@ -1,13 +1,24 @@ ON PROTOBUFS -This maven module has protobuf definition files ('.protos') used by hbase -Coprocessor Endpoints that ship with hbase core (including tests). Coprocessor +This maven module has protobuf definition files ('.protos') used by hbase +Coprocessor Endpoints that ship with hbase core including tests. Coprocessor Endpoints are meant to be standalone, independent code not reliant on hbase internals. They define their Service using protobuf. The protobuf version they use can be distinct from that used by HBase internally since HBase started shading its protobuf references. Endpoints have no access to the shaded protobuf -hbase uses. They do have access to the content of hbase-protocol -- the -.protos found in this module -- but avoid using as much of this as you can as it is -liable to change. +hbase uses. They do have access to the content of hbase-protocol but avoid using +as much of this as you can as it is liable to change. -Generation of java files from protobuf .proto files included here is done as -part of the build. +Generation of java files from protobuf .proto files included here is done apart +from the build. Run the generation whenever you make changes to the .orotos files +and then check in the produced java (The reasoning is that change is infrequent +so why pay the price of generating files anew on each build. + +To generate java files from protos run: + + $ mvn compile -Dcompile-protobuf +or + $ mvn compile -Pcompile-protobuf + +After you've done the above, check it and then check in changes (or post a patch +on a JIRA with your definition file changes and the generated files). Be careful +to notice new files and files removed and do appropriate git rm/adds. http://git-wip-us.apache.org/repos/asf/hbase/blob/6786b2b6/hbase-endpoint/pom.xml ---------------------------------------------------------------------- diff --git a/hbase-endpoint/pom.xml b/hbase-endpoint/pom.xml index 088f467..c45e953 100644 --- a/hbase-endpoint/pom.xml +++ b/hbase-endpoint/pom.xml @@ -1,6 +1,6 @@ <?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 @@ -19,34 +19,37 @@ * 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-endpoint</artifactId> - <name>Apache HBase - Coprocessor Endpoint</name> - <description>HBase Coprocessor Endpoint implementations</description> - <!--REMOVE--> - <properties> - <maven.javadoc.skip>true</maven.javadoc.skip> - </properties> - <build> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-site-plugin</artifactId> - <configuration> - <skip>true</skip> - </configuration> - </plugin> - <!-- Make a jar and put the sources in the jar --> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-source-plugin</artifactId> - </plugin> + <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-endpoint</artifactId> + <name>Apache HBase - Coprocessor Endpoint</name> + <description>HBase Coprocessor Endpoint implementations</description> +<!--REMOVE--> + + <properties> + <maven.javadoc.skip>true</maven.javadoc.skip> + </properties> + + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-site-plugin</artifactId> + <configuration> + <skip>true</skip> + </configuration> + </plugin> + <!-- Make a jar and put the sources in the jar --> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-source-plugin</artifactId> + </plugin> <plugin> <!--Make it so assembly:single does nothing in here--> <artifactId>maven-assembly-plugin</artifactId> @@ -54,56 +57,39 @@ <skipAssembly>true</skipAssembly> </configuration> </plugin> - <plugin> - <groupId>org.xolstice.maven.plugins</groupId> - <artifactId>protobuf-maven-plugin</artifactId> - <executions> - <execution> - <id>compile-protoc</id> - <phase>generate-sources</phase> - <goals> - <goal>compile</goal> - </goals> - <configuration> - <additionalProtoPathElements> - <additionalProtoPathElement>${basedir}/../hbase-protocol/src/main/protobuf</additionalProtoPathElement> - </additionalProtoPathElements> - </configuration> - </execution> - </executions> - </plugin> - </plugins> - <pluginManagement> - <plugins> - <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.--> - <plugin> - <groupId>org.eclipse.m2e</groupId> - <artifactId>lifecycle-mapping</artifactId> - <version>1.0.0</version> - <configuration> - <lifecycleMappingMetadata> - <pluginExecutions> - <pluginExecution> - <pluginExecutionFilter> - <groupId>org.apache.hadoop</groupId> - <artifactId>hadoop-maven-plugins</artifactId> - <versionRange>[2.0.5-alpha,)</versionRange> - <goals> - <goal>protoc</goal> - </goals> - </pluginExecutionFilter> - <action> - <ignore/> - </action> - </pluginExecution> - </pluginExecutions> - </lifecycleMappingMetadata> - </configuration> - </plugin> </plugins> - </pluginManagement> - </build> - <dependencies> + <pluginManagement> + <plugins> + <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.--> + <plugin> + <groupId>org.eclipse.m2e</groupId> + <artifactId>lifecycle-mapping</artifactId> + <configuration> + <lifecycleMappingMetadata> + <pluginExecutions> + <pluginExecution> + <pluginExecutionFilter> + <groupId>org.apache.hadoop</groupId> + <artifactId>hadoop-maven-plugins</artifactId> + <versionRange>[2.0.5-alpha,)</versionRange> + <goals> + <goal>protoc</goal> + </goals> + </pluginExecutionFilter> + <action> + <ignore></ignore> + </action> + </pluginExecution> + </pluginExecutions> + </lifecycleMappingMetadata> + </configuration> + </plugin> + </plugins> + </pluginManagement> + </build> + + <dependencies> + <!-- Intra-project dependencies --> <dependency> <groupId>org.apache.hbase</groupId> <artifactId>hbase-annotations</artifactId> @@ -136,57 +122,88 @@ <type>test-jar</type> <scope>test</scope> </dependency> - <dependency> - <groupId>org.apache.hbase</groupId> - <artifactId>hbase-protocol</artifactId> - </dependency> - <dependency> - <groupId>org.apache.hbase</groupId> - <artifactId>hbase-client</artifactId> - </dependency> - <!--Some of the CPEPs use hbase server-side internals; they shouldn't! + <dependency> + <groupId>org.apache.hbase</groupId> + <artifactId>hbase-protocol</artifactId> + </dependency> + <dependency> + <groupId>org.apache.hbase</groupId> + <artifactId>hbase-client</artifactId> + </dependency> + <!--Some of the CPEPs use hbase server-side internals; they shouldn't! --> - <dependency> - <groupId>org.apache.hbase</groupId> - <artifactId>hbase-server</artifactId> - </dependency> - <dependency> - <groupId>org.apache.hbase</groupId> - <artifactId>hbase-server</artifactId> - <type>test-jar</type> - <scope>test</scope> - </dependency> - <!-- General dependencies --> - <dependency> - <groupId>commons-logging</groupId> - <artifactId>commons-logging</artifactId> - </dependency> - </dependencies> - <profiles> - <!-- Skip the tests in this module --> - <profile> - <id>skipRpcTests</id> - <activation> - <property> - <name>skipRpcTests</name> - </property> - </activation> - <properties> - <surefire.skipFirstPart>true</surefire.skipFirstPart> - <surefire.skipSecondPart>true</surefire.skipSecondPart> - </properties> - </profile> + <dependency> + <groupId>org.apache.hbase</groupId> + <artifactId>hbase-server</artifactId> + </dependency> + <dependency> + <groupId>org.apache.hbase</groupId> + <artifactId>hbase-server</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + <!-- General dependencies --> + <dependency> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </dependency> + </dependencies> + + <profiles> + <!-- Skip the tests in this module --> + <profile> + <id>skipRpcTests</id> + <activation> + <property> + <name>skipRpcTests</name> + </property> + </activation> + <properties> + <surefire.skipFirstPart>true</surefire.skipFirstPart> + <surefire.skipSecondPart>true</surefire.skipSecondPart> + </properties> + </profile> + <profile> + <id>compile-protobuf</id> + <activation> + <property> + <name>compile-protobuf</name> + </property> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.xolstice.maven.plugins</groupId> + <artifactId>protobuf-maven-plugin</artifactId> + <executions> + <execution> + <id>compile-protoc</id> + <phase>generate-sources</phase> + <goals> + <goal>compile</goal> + </goals> + <configuration> + <additionalProtoPathElements> + <additionalProtoPathElement>${basedir}/../hbase-protocol/src/main/protobuf</additionalProtoPathElement> + </additionalProtoPathElements> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> <!-- Profiles for building against different hadoop versions --> <!-- There are a lot of common dependencies used here, should investigate if we can combine these profiles somehow --> + <!-- profile for building against Hadoop 2.x. This is the default. --> <profile> <id>hadoop-2.0</id> <activation> <property> - <!--Below formatting for dev-support/generate-hadoopX-poms.sh--> - <!--h2--> - <name>!hadoop.profile</name> + <!--Below formatting for dev-support/generate-hadoopX-poms.sh--> + <!--h2--><name>!hadoop.profile</name> </property> </activation> <dependencies> @@ -259,5 +276,5 @@ </dependency> </dependencies> </profile> - </profiles> + </profiles> </project>