HBASE-23793 Increase maven heap allocation to 4G in Yetus personality (#1122)
[hbase.git] / hbase-protocol / pom.xml
blob6f3a42a7f8bf7b34033e62ca0e14000f7c8e058d
1 <?xml version="1.0"?>
2 <project xmlns="https://maven.apache.org/POM/4.0.0" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
3   <!--
4     /**
5      * Licensed to the Apache Software Foundation (ASF) under one
6      * or more contributor license agreements.  See the NOTICE file
7      * distributed with this work for additional information
8      * regarding copyright ownership.  The ASF licenses this file
9      * to you under the Apache License, Version 2.0 (the
10      * "License"); you may not use this file except in compliance
11      * with the License.  You may obtain a copy of the License at
12      *
13      *     http://www.apache.org/licenses/LICENSE-2.0
14      *
15      * Unless required by applicable law or agreed to in writing, software
16      * distributed under the License is distributed on an "AS IS" BASIS,
17      * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18      * See the License for the specific language governing permissions and
19      * limitations under the License.
20      */
21     -->
22   <modelVersion>4.0.0</modelVersion>
23   <parent>
24     <artifactId>hbase-build-configuration</artifactId>
25     <groupId>org.apache.hbase</groupId>
26     <version>3.0.0-SNAPSHOT</version>
27     <relativePath>../hbase-build-configuration</relativePath>
28   </parent>
29   <artifactId>hbase-protocol</artifactId>
30   <name>Apache HBase - Protocol</name>
31   <description>Protobuf protocol classes used by HBase to communicate.</description>
32   <properties>
33     <maven.javadoc.skip>true</maven.javadoc.skip>
34   </properties>
35   <build>
36     <plugins>
37       <!-- Make a jar and put the sources in the jar -->
38       <plugin>
39         <groupId>org.apache.maven.plugins</groupId>
40         <artifactId>maven-source-plugin</artifactId>
41       </plugin>
42       <plugin>
43         <!--Make it so assembly:single does nothing in here-->
44         <artifactId>maven-assembly-plugin</artifactId>
45         <configuration>
46           <skipAssembly>true</skipAssembly>
47         </configuration>
48       </plugin>
49       <plugin>
50         <artifactId>maven-surefire-plugin</artifactId>
51         <!-- Always skip the second part executions, since we only run simple unit tests in this module -->
52         <executions>
53           <execution>
54             <id>secondPartTestsExecution</id>
55             <phase>test</phase>
56             <goals>
57               <goal>test</goal>
58             </goals>
59             <configuration>
60               <skip>true</skip>
61             </configuration>
62           </execution>
63         </executions>
64       </plugin>
65       <plugin>
66         <groupId>org.xolstice.maven.plugins</groupId>
67         <artifactId>protobuf-maven-plugin</artifactId>
68         <executions>
69           <execution>
70             <id>compile-protoc</id>
71             <phase>generate-sources</phase>
72             <goals>
73               <goal>compile</goal>
74             </goals>
75           </execution>
76         </executions>
77       </plugin>
78       <plugin>
79         <groupId>com.google.code.maven-replacer-plugin</groupId>
80         <artifactId>replacer</artifactId>
81         <version>1.5.3</version>
82         <executions>
83           <execution>
84             <phase>process-sources</phase>
85             <goals>
86               <goal>replace</goal>
87             </goals>
88           </execution>
89         </executions>
90         <configuration>
91           <basedir>${basedir}/target/generated-sources/</basedir>
92             <includes>
93                 <include>**/*.java</include>
94             </includes>
95             <!-- Ignore errors when missing files, because it means this build
96                  was run with -Dprotoc.skip and there is no -Dreplacer.skip -->
97             <ignoreErrors>true</ignoreErrors>
98             <replacements>
99               <replacement>
100                 <token>(public)(\W+static)?(\W+final)?(\W+class)</token>
101                 <value>@javax.annotation.Generated("proto") $1$2$3$4</value>
102               </replacement>
103               <!-- replacer doesn't support anchoring or negative lookbehind -->
104               <replacement>
105                 <token>(@javax.annotation.Generated\("proto"\) ){2}</token>
106                 <value>$1</value>
107               </replacement>
108             </replacements>
109         </configuration>
110       </plugin>
111       <plugin>
112         <groupId>org.apache.maven.plugins</groupId>
113         <artifactId>maven-checkstyle-plugin</artifactId>
114         <configuration>
115           <failOnViolation>true</failOnViolation>
116         </configuration>
117       </plugin>
118       <plugin>
119         <groupId>net.revelc.code</groupId>
120         <artifactId>warbucks-maven-plugin</artifactId>
121       </plugin>
122     </plugins>
123   </build>
124   <dependencies>
125     <!-- General dependencies -->
126     <dependency>
127       <groupId>com.google.protobuf</groupId>
128       <artifactId>protobuf-java</artifactId>
129     </dependency>
130     <dependency>
131       <groupId>org.slf4j</groupId>
132       <artifactId>slf4j-api</artifactId>
133     </dependency>
134   </dependencies>
135   <profiles>
136     <!-- Skip the tests in this module -->
137     <profile>
138       <id>skipProtocolTests</id>
139       <activation>
140         <property>
141           <name>skipProtocolTests</name>
142         </property>
143       </activation>
144       <properties>
145         <surefire.skipFirstPart>true</surefire.skipFirstPart>
146         <surefire.skipSecondPart>true</surefire.skipSecondPart>
147       </properties>
148     </profile>
149     <profile>
150       <id>build-with-jdk11</id>
151       <activation>
152         <jdk>[1.11,)</jdk>
153       </activation>
154       <dependencies>
155         <dependency>
156           <groupId>javax.annotation</groupId>
157           <artifactId>javax.annotation-api</artifactId>
158         </dependency>
159       </dependencies>
160     </profile>
161     <profile>
162       <id>eclipse-specific</id>
163       <activation>
164         <property>
165           <name>m2e.version</name>
166         </property>
167       </activation>
168       <build>
169         <pluginManagement>
170           <plugins>
171             <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
172             <plugin>
173               <groupId>org.eclipse.m2e</groupId>
174               <artifactId>lifecycle-mapping</artifactId>
175               <version>1.0.0</version>
176               <configuration>
177                 <lifecycleMappingMetadata>
178                   <pluginExecutions>
179                     <pluginExecution>
180                       <pluginExecutionFilter>
181                         <groupId>org.apache.hadoop</groupId>
182                         <artifactId>hadoop-maven-plugins</artifactId>
183                         <versionRange>[2.0.5-alpha,)</versionRange>
184                         <goals>
185                           <goal>protoc</goal>
186                         </goals>
187                       </pluginExecutionFilter>
188                       <action>
189                         <ignore/>
190                       </action>
191                     </pluginExecution>
192                     <pluginExecution>
193                       <pluginExecutionFilter>
194                         <groupId>
195                           com.google.code.maven-replacer-plugin
196                         </groupId>
197                         <artifactId>replacer</artifactId>
198                         <versionRange>[1.5.3,)</versionRange>
199                         <goals>
200                           <goal>replace</goal>
201                         </goals>
202                       </pluginExecutionFilter>
203                       <action>
204                         <ignore></ignore>
205                       </action>
206                     </pluginExecution>
207                   </pluginExecutions>
208                 </lifecycleMappingMetadata>
209               </configuration>
210             </plugin>
211           </plugins>
212         </pluginManagement>
213       </build>
214     </profile>
215   </profiles>
216 </project>