gcs-connector
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>com.google.cloud.bigdataoss</groupId>
<artifactId>gcs-connector</artifactId>
<version>hadoop3-2.2.21</version>
</dependency><?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (C) 2014 Google, Inc.
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.
-->
<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">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.google.cloud.bigdataoss</groupId>
<artifactId>bigdataoss-parent</artifactId>
<version>2.2.21</version>
<relativePath>../pom.xml</relativePath>
</parent>
<name>gcs-connector-hadoop3</name>
<description>
An implementation of org.apache.hadoop.fs.FileSystem targeting Google Cloud Storage
</description>
<artifactId>gcs-connector</artifactId>
<version>hadoop3-2.2.21</version>
<profiles>
<profile>
<id>hadoop2</id>
<dependencies>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-common</artifactId>
</dependency>
</dependencies>
</profile>
<profile>
<id>hadoop3</id>
<dependencies>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client-api</artifactId>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client-runtime</artifactId>
</dependency>
</dependencies>
</profile>
<profile>
<id>integration-test</id>
<build>
<plugins>
<plugin>
<artifactId>maven-failsafe-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/HadoopFileSystemIntegrationTest.java</exclude>
<exclude>**/WebHdfsIntegrationTest.java</exclude>
</excludes>
<includes>
<include>**/*IntegrationTest.java</include>
<include>**/TestGoogleContract*.java</include>
</includes>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<dependencies>
<dependency>
<groupId>com.google.api-client</groupId>
<artifactId>google-api-client-jackson2</artifactId>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
</dependency>
<dependency>
<groupId>com.google.oauth-client</groupId>
<artifactId>google-oauth-client</artifactId>
</dependency>
<dependency>
<groupId>com.google.cloud.bigdataoss</groupId>
<artifactId>util</artifactId>
<version>${bigdataoss.version}</version>
</dependency>
<dependency>
<groupId>com.google.cloud.bigdataoss</groupId>
<artifactId>util-hadoop</artifactId>
<version>hadoop3-${bigdataoss.version}</version>
</dependency>
<dependency>
<groupId>com.google.cloud.bigdataoss</groupId>
<artifactId>gcsio</artifactId>
<version>${bigdataoss.version}</version>
</dependency>
<dependency>
<groupId>com.google.auto.value</groupId>
<artifactId>auto-value-annotations</artifactId>
</dependency>
<dependency>
<groupId>com.google.flogger</groupId>
<artifactId>flogger</artifactId>
</dependency>
<dependency>
<groupId>com.google.flogger</groupId>
<artifactId>google-extensions</artifactId>
</dependency>
<dependency>
<groupId>com.google.flogger</groupId>
<artifactId>flogger-system-backend</artifactId>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
</dependency>
<!-- Test dependencies -->
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-common</artifactId>
<classifier>tests</classifier>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.google.cloud.bigdataoss</groupId>
<artifactId>gcsio</artifactId>
<version>${bigdataoss.version}</version>
<scope>test</scope>
<type>test-jar</type>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
<dependency>
<groupId>com.google.truth</groupId>
<artifactId>truth</artifactId>
</dependency>
<dependency>
<groupId>com.google.truth.extensions</groupId>
<artifactId>truth-java8-extension</artifactId>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>src/main/hadoop3/java</source>
</sources>
</configuration>
</execution>
<execution>
<id>add-resource</id>
<phase>generate-resources</phase>
<goals>
<goal>add-resource</goal>
</goals>
<configuration>
<resources>
<resource>
<directory>src/main/hadoop3/resources</directory>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/*IntegrationTest.java</exclude>
<exclude>**/TestGoogleContract*.java</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<artifactId>maven-shade-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<transformer
implementation="org.apache.maven.plugins.shade.resource.ApacheLicenseResourceTransformer"/>
<transformer
implementation="org.apache.maven.plugins.shade.resource.ApacheNoticeResourceTransformer"/>
<transformer
implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
</transformers>
<filters>
<!-- minimizeJar breaks all the dynamic load hacks; add them explicitly -->
<filter>
<artifact>com.google.auth:*</artifact>
<includes>
<include>**</include>
</includes>
</filter>
<filter>
<artifact>io.grpc:*</artifact>
<includes>
<include>**</include>
</includes>
</filter>
<filter>
<artifact>io.opencensus:*</artifact>
<includes>
<include>**</include>
</includes>
</filter>
<filter>
<artifact>*:*</artifact>
<excludes>
<exclude>*.json</exclude>
<exclude>google/**</exclude>
<exclude>grpc/**</exclude>
</excludes>
</filter>
</filters>
<artifactSet>
<includes>
<include>com.fasterxml.jackson.core:jackson-core</include>
<include>com.google.api</include>
<include>com.google.api-client</include>
<include>com.google.api.grpc</include>
<include>com.google.apis</include>
<include>com.google.auth</include>
<include>com.google.cloud</include>
<include>com.google.cloud.bigdataoss</include>
<include>com.google.cloud.grpc</include>
<include>com.google.cloud.http</include>
<include>com.google.flogger</include>
<include>com.google.code.gson</include>
<include>com.google.guava</include>
<include>com.google.http-client</include>
<include>com.google.oauth-client</include>
<include>com.google.protobuf</include>
<include>com.google.re2j</include>
<include>com.google.storage.v2</include>
<!-- Needed by http client and versions conflict -->
<include>commons-codec:commons-codec</include>
<include>com.lmax</include>
<include>io.grpc</include>
<include>io.opencensus</include>
<include>io.perfmark</include>
<include>org.apache.httpcomponents</include>
<include>org.threeten:threetenbp</include>
</includes>
</artifactSet>
<minimizeJar>true</minimizeJar>
<relocations>
<relocation>
<pattern>com</pattern>
<shadedPattern>com.google.cloud.hadoop.repackaged.gcs.com</shadedPattern>
<includes>
<include>com.fasterxml.**</include>
<include>com.google.api.**</include>
<include>com.google.api.gax.**</include>
<include>com.google.auth.**</include>
<include>com.google.cloud.*</include>
<include>com.google.cloud.audit.**</include>
<include>com.google.cloud.grpc.**</include>
<include>com.google.cloud.hadoop.gcsio.**</include>
<include>com.google.cloud.hadoop.util.**</include>
<include>com.google.cloud.http.**</include>
<include>com.google.cloud.monitoring.**</include>
<include>com.google.cloud.spi.**</include>
<include>com.google.cloud.storage.**</include>
<include>com.google.common.**</include>
<include>com.google.geo.**</include>
<include>com.google.gson.**</include>
<include>com.google.google.storage.**</include>
<include>com.google.iam.**</include>
<include>com.google.logging.**</include>
<include>com.google.longrunning.**</include>
<include>com.google.monitoring.**</include>
<include>com.google.protobuf.**</include>
<include>com.google.re2j.**</include>
<include>com.google.rpc.**</include>
<include>com.google.storage.**</include>
<include>com.google.thirdparty.**</include>
<include>com.google.type.**</include>
<include>com.lmax.disruptor.**</include>
</includes>
<excludes>
<exclude>com.google.cloud.hadoop.gcsio.authorization.AuthorizationHandler</exclude>
<exclude>com.google.cloud.hadoop.util.AccessTokenProvider</exclude>
<exclude>com.google.cloud.hadoop.util.AccessTokenProvider$AccessToken</exclude>
<exclude>com.google.cloud.hadoop.util.AccessTokenProvider$AccessTokenType</exclude>
<exclude>com.google.cloud.hadoop.util.AccessBoundary</exclude>
<exclude>com.google.cloud.hadoop.util.AccessBoundary$Action</exclude>
<exclude>com.google.cloud.hadoop.util.AutoValue_AccessBoundary</exclude>
</excludes>
</relocation>
<relocation>
<pattern>org</pattern>
<shadedPattern>com.google.cloud.hadoop.repackaged.gcs.org</shadedPattern>
<includes>
<include>org.apache.commons.codec.**</include>
<include>org.apache.http.**</include>
<include>org.threeten.**</include>
</includes>
</relocation>
<!-- Take special care of grpc-netty-shaded, it uses the package
io.grpc.netty.shaded.io.grpc.netty, which will cause the
ServicesResourceTransformer to replace both occurrences of io.grpc -->
<relocation>
<pattern>io.grpc.netty.shaded</pattern>
<shadedPattern>
com.google.cloud.hadoop.repackaged.gcs.io.grpc.netty.shaded
</shadedPattern>
</relocation>
<relocation>
<pattern>io</pattern>
<shadedPattern>com.google.cloud.hadoop.repackaged.gcs.io</shadedPattern>
<includes>
<include>io.grpc.**</include>
<include>io.opencensus.**</include>
<include>io.perfmark.**</include>
</includes>
</relocation>
<relocation>
<pattern>META-INF/native/io_grpc_netty_shaded_</pattern>
<shadedPattern>
META-INF/native/com_google_cloud_hadoop_repackaged_gcs_io_grpc_netty_shaded_
</shadedPattern>
</relocation>
<relocation>
<pattern>META-INF/native/libio_grpc_netty_shaded_</pattern>
<shadedPattern>
META-INF/native/libcom_google_cloud_hadoop_repackaged_gcs_io_grpc_netty_shaded_
</shadedPattern>
</relocation>
</relocations>
<shadedArtifactAttached>true</shadedArtifactAttached>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>