| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| Licensed 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. See accompanying LICENSE file. |
| --> |
| <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> |
| <groupId>org.apache</groupId> |
| <artifactId>apache</artifactId> |
| <version>21</version> |
| <relativePath/> |
| <!-- no parent resolution --> |
| </parent> |
| |
| <groupId>org.apache.hbase.filesystem</groupId> |
| <artifactId>hbase-filesystem</artifactId> |
| <version>1.0.0-alpha2-SNAPSHOT</version> |
| |
| <name>Apache HBase FileSystem-related Modules</name> |
| <description> |
| This project houses projects that work at the Apache Hadoop FileSystem layer |
| to meet Apache HBase's needs. This work is experimental, and may eventually |
| be replaced by other initiatives in HBase. It is therefore released |
| separately. |
| </description> |
| <packaging>pom</packaging> |
| |
| <properties> |
| <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |
| <compileSource>1.8</compileSource> |
| <maven.compiler.source>${compileSource}</maven.compiler.source> |
| <maven.compiler.target>${compileSource}</maven.compiler.target> |
| |
| <!-- XXX If you change these versions please ensure the bundled LICENSE/NOTICE in |
| hbase-oss is correct |
| --> |
| <assertj.version>3.12.2</assertj.version> |
| <audience-annotations.version>0.5.0</audience-annotations.version> |
| <aws-java-sdk.version>1.11.1026</aws-java-sdk.version> |
| <commons-io.version>2.11.0</commons-io.version> |
| <commons-lang3.version>3.6</commons-lang3.version> |
| <curator.version>4.2.0</curator.version> |
| <enforcer.version>3.0.0-M3</enforcer.version> |
| <extra.enforcer.version>1.2</extra.enforcer.version> |
| <hadoop.version>3.3.2</hadoop.version> |
| <hbase.version>2.5.4</hbase.version> |
| <hbase-thirdparty.version>3.5.1</hbase-thirdparty.version> |
| <junit.version>4.12</junit.version> |
| <log4j2.version>2.17.2</log4j2.version> |
| <slf4j.version>1.7.25</slf4j.version> |
| <!-- Keep this in sync with the version of ZK |
| that the corresponding HBase version is using. --> |
| <zookeeper.version>3.5.7</zookeeper.version> |
| <!-- system property for the hadoop version passed |
| down in tests. --> |
| <HBOSS_HADOOP_VERSION>3.3</HBOSS_HADOOP_VERSION> |
| <!-- Code coverage properties --> |
| <clover-maven-plugin.version>4.4.1</clover-maven-plugin.version> |
| <sonar-maven-plugin.version>3.9.1.2184</sonar-maven-plugin.version> |
| </properties> |
| |
| <modules> |
| <module>hbase-oss</module> |
| <module>hadoop-testutils</module> |
| </modules> |
| |
| <!-- For testing against ZK --> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-zookeeper</artifactId> |
| <version>${hbase.version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hbase</groupId> |
| <artifactId>hbase-zookeeper</artifactId> |
| <version>${hbase.version}</version> |
| <type>test-jar</type> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| |
| <build> |
| <pluginManagement> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-enforcer-plugin</artifactId> |
| <version>${enforcer.version}</version> |
| <dependencies> |
| <dependency> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>extra-enforcer-rules</artifactId> |
| <version>${extra.enforcer.version}</version> |
| </dependency> |
| </dependencies> |
| </plugin> |
| <plugin> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <version>2.22.1</version> |
| <configuration> |
| <trimStackTrace>false</trimStackTrace> |
| <redirectTestOutputToFile>true</redirectTestOutputToFile> |
| <reuseForks>false</reuseForks> |
| <systemProperties> |
| <test.unique.fork.id>fork-000${surefire.forkNumber}</test.unique.fork.id> |
| </systemProperties> |
| </configuration> |
| </plugin> |
| </plugins> |
| </pluginManagement> |
| </build> |
| |
| <profiles> |
| <!-- empty profile retained for consistency and in case a new profile is ever |
| required in future --> |
| <profile> |
| <id>hadoop3.3</id> |
| <activation> |
| <property> |
| <name>hadoop.profile</name> |
| <value>3.3</value> |
| </property> |
| </activation> |
| </profile> |
| <profile> |
| <id>hadoop-default</id> |
| <activation> |
| <property> |
| <name>!hadoop.profile</name> |
| </property> |
| </activation> |
| </profile> |
| <!-- this profile should match the name of the release profile in the root asf pom --> |
| <profile> |
| <id>apache-release</id> |
| <build> |
| <plugins> |
| <!-- This should insert itself in place of the normal deploy plugin and then |
| handle either closing or dropping the staging repository for us depending |
| on if the build succeeds. |
| --> |
| <plugin> |
| <groupId>org.sonatype.plugins</groupId> |
| <artifactId>nexus-staging-maven-plugin</artifactId> |
| <version>1.6.8</version> |
| <extensions>true</extensions> |
| <configuration> |
| <nexusUrl>https://repository.apache.org/</nexusUrl> |
| <serverId>apache.releases.https</serverId> |
| </configuration> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| <!-- this profile should be activated for release builds --> |
| <profile> |
| <id>release</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.rat</groupId> |
| <artifactId>apache-rat-plugin</artifactId> |
| <executions> |
| <execution> |
| <phase>package</phase> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-enforcer-plugin</artifactId> |
| <configuration> |
| <rules> |
| <enforceBytecodeVersion> |
| <maxJdkVersion>${compileSource}</maxJdkVersion> |
| <message>HBase has unsupported dependencies. |
| HBase requires that all dependencies be compiled with version ${compileSource} 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). |
| </message> |
| </enforceBytecodeVersion> |
| </rules> |
| </configuration> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| |
| <profile> |
| <id>clover</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| <property> |
| <name>clover</name> |
| </property> |
| </activation> |
| <properties> |
| <cloverDatabase>${project.build.directory}/clover/code-coverage.db</cloverDatabase> |
| </properties> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.openclover</groupId> |
| <artifactId>clover-maven-plugin</artifactId> |
| <configuration> |
| <cloverDatabase>${cloverDatabase}</cloverDatabase> |
| <cloverMergeDatabase>${cloverDatabase}</cloverMergeDatabase> |
| <outputDirectory>${project.build.directory}/clover</outputDirectory> |
| <alwaysReport>true</alwaysReport> |
| <generateHistorical>false</generateHistorical> |
| <generateHtml>true</generateHtml> |
| <includesTestSourceRoots>true</includesTestSourceRoots> |
| <includesAllSourceRoots>false</includesAllSourceRoots> |
| <includes> |
| <include>**/org/apache/**/*.java</include> |
| </includes> |
| <excludes> |
| <exclude>**/src/main/appended-resources/**/*</exclude> |
| </excludes> |
| </configuration> |
| <executions> |
| <execution> |
| <id>clover-setup</id> |
| <goals> |
| <goal>setup</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| <pluginManagement> |
| <plugins> |
| <plugin> |
| <groupId>org.openclover</groupId> |
| <artifactId>clover-maven-plugin</artifactId> |
| <version>${clover-maven-plugin.version}</version> |
| </plugin> |
| </plugins> |
| </pluginManagement> |
| </build> |
| </profile> |
| |
| <profile> |
| <id>sonar</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| <property> |
| <name>sonar</name> |
| </property> |
| </activation> |
| <properties> |
| <sonar.core.codeCoveragePlugin>clover</sonar.core.codeCoveragePlugin> |
| <sonar.clover.version>${clover-maven-plugin.version}</sonar.clover.version> |
| <sonar.clover.reportPath>${project.build.directory}/clover/clover.xml</sonar.clover.reportPath> |
| <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath> |
| <sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis> |
| </properties> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.sonarsource.scanner.maven</groupId> |
| <artifactId>sonar-maven-plugin</artifactId> |
| </plugin> |
| </plugins> |
| <pluginManagement> |
| <plugins> |
| <plugin> |
| <groupId>org.sonarsource.scanner.maven</groupId> |
| <artifactId>sonar-maven-plugin</artifactId> |
| <version>${sonar-maven-plugin.version}</version> |
| </plugin> |
| </plugins> |
| </pluginManagement> |
| </build> |
| </profile> |
| |
| </profiles> |
| |
| </project> |