| <?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. |
| --> |
| <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>29</version> |
| </parent> |
| <groupId>org.apache.orc</groupId> |
| <artifactId>orc-format</artifactId> |
| <version>1.2.0-SNAPSHOT</version> |
| <packaging>jar</packaging> |
| |
| <name>Apache ORC Format</name> |
| <description>ORC is a self-describing type-aware columnar file format designed |
| for Hadoop workloads. It is optimized for large streaming reads, |
| but with integrated support for finding required rows |
| quickly. Storing data in a columnar format lets the reader read, |
| decompress, and process only the values that are required for the |
| current query. |
| </description> |
| <url>https://orc.apache.org</url> |
| <inceptionYear>2013</inceptionYear> |
| |
| <mailingLists> |
| <mailingList> |
| <name>ORC User List</name> |
| <subscribe>user-subscribe@orc.apache.org</subscribe> |
| <unsubscribe>user-unsubscribe@orc.apache.org</unsubscribe> |
| <post>user@orc.apache.org</post> |
| <archive>https://mail-archives.apache.org/mod_mbox/orc-user/</archive> |
| </mailingList> |
| <mailingList> |
| <name>ORC Developer List</name> |
| <subscribe>dev-subscribe@orc.apache.org</subscribe> |
| <unsubscribe>dev-unsubscribe@orc.apache.org</unsubscribe> |
| <post>dev@orc.apache.org</post> |
| <archive>https://mail-archives.apache.org/mod_mbox/orc-dev/</archive> |
| </mailingList> |
| </mailingLists> |
| |
| <properties> |
| <java.version>17</java.version> |
| <maven-assembly-plugin.version>3.6.0</maven-assembly-plugin.version> |
| <maven-dependency-plugin.version>3.6.0</maven-dependency-plugin.version> |
| <maven-shade-plugin.version>3.5.1</maven-shade-plugin.version> |
| <maven.compiler.release>17</maven.compiler.release> |
| <maven.compiler.useIncrementalCompilation>false</maven.compiler.useIncrementalCompilation> |
| <maven.version>3.9.6</maven.version> |
| <protoc.version>3.25.8</protoc.version> |
| <test.tmp.dir>${project.build.directory}/testing-tmp</test.tmp.dir> |
| </properties> |
| |
| <dependencies> |
| <dependency> |
| <groupId>com.google.protobuf</groupId> |
| <artifactId>protobuf-java</artifactId> |
| <version>3.25.8</version> |
| </dependency> |
| </dependencies> |
| |
| <repositories> |
| <repository> |
| <releases> |
| <enabled>true</enabled> |
| </releases> |
| <snapshots> |
| <enabled>false</enabled> |
| </snapshots> |
| <id>gcs-maven-central-mirror</id> |
| <!-- |
| Google Mirror of Maven Central, placed first so that it's used instead of flaky Maven Central. |
| See https://storage-download.googleapis.com/maven-central/index.html |
| --> |
| <name>GCS Maven Central mirror</name> |
| <url>https://maven-central.storage-download.googleapis.com/maven2/</url> |
| </repository> |
| <repository> |
| <releases> |
| <enabled>true</enabled> |
| </releases> |
| <snapshots> |
| <enabled>false</enabled> |
| </snapshots> |
| <!-- |
| This is used as a fallback when the first try fails. |
| --> |
| <id>central</id> |
| <name>Maven Repository</name> |
| <url>https://repo.maven.apache.org/maven2</url> |
| </repository> |
| </repositories> |
| |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>com.github.os72</groupId> |
| <artifactId>protoc-jar-maven-plugin</artifactId> |
| <version>3.11.4</version> |
| <executions> |
| <execution> |
| <phase>generate-sources</phase> |
| <goals> |
| <goal>run</goal> |
| </goals> |
| <configuration> |
| <protocVersion>${protoc.version}</protocVersion> |
| <protocArtifact>com.google.protobuf:protoc:${protoc.version}</protocArtifact> |
| <addSources>none</addSources> |
| <inputDirectories> |
| <include>src/main/proto/</include> |
| </inputDirectories> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-enforcer-plugin</artifactId> |
| <version>3.4.0</version> |
| <dependencies> |
| <dependency> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>extra-enforcer-rules</artifactId> |
| <version>1.7.0</version> |
| </dependency> |
| </dependencies> |
| <executions> |
| <execution> |
| <id>enforce-maven</id> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <configuration> |
| <rules> |
| <requireMavenVersion> |
| <version>${maven.version}</version> |
| </requireMavenVersion> |
| <requireJavaVersion> |
| <version>${java.version}</version> |
| </requireJavaVersion> |
| <enforceBytecodeVersion> |
| <maxJdkVersion>${java.version}</maxJdkVersion> |
| </enforceBytecodeVersion> |
| </rules> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <version>3.10.1</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-javadoc-plugin</artifactId> |
| <configuration> |
| <sourceFileExcludes> |
| <exclude>**/OrcProto.java</exclude> |
| </sourceFileExcludes> |
| <destDir>${project.artifactId}</destDir> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-shade-plugin</artifactId> |
| <version>${maven-shade-plugin.version}</version> |
| <executions> |
| <execution> |
| <id>shaded-protobuf</id> |
| <goals> |
| <goal>shade</goal> |
| </goals> |
| <phase>package</phase> |
| <configuration> |
| <artifactSet> |
| <includes> |
| <include>com.google.protobuf:protobuf-java</include> |
| </includes> |
| </artifactSet> |
| <shadedArtifactAttached>true</shadedArtifactAttached> |
| <shadedClassifierName>shaded-protobuf</shadedClassifierName> |
| <relocations> |
| <relocation> |
| <pattern>com.google.protobuf</pattern> |
| <shadedPattern>org.apache.orc.protobuf</shadedPattern> |
| </relocation> |
| </relocations> |
| <filters> |
| <filter> |
| <artifact>*:*</artifact> |
| <excludes> |
| <exclude>module-info.class</exclude> |
| <exclude>META-INF/MANIFEST.MF</exclude> |
| <exclude>META-INF/DEPENDENCIES</exclude> |
| <exclude>META-INF/LICENSE</exclude> |
| <exclude>META-INF/NOTICE</exclude> |
| <exclude>google/protobuf/**</exclude> |
| </excludes> |
| </filter> |
| </filters> |
| </configuration> |
| </execution> |
| <execution> |
| <id>nohive</id> |
| <goals> |
| <goal>shade</goal> |
| </goals> |
| <phase>package</phase> |
| <configuration> |
| <artifactSet> |
| <includes> |
| <include>com.google.protobuf:protobuf-java</include> |
| <include>org.apache.hive:hive-storage-api</include> |
| </includes> |
| </artifactSet> |
| <shadedArtifactAttached>true</shadedArtifactAttached> |
| <shadedClassifierName>nohive</shadedClassifierName> |
| <relocations> |
| <relocation> |
| <pattern>com.google.protobuf</pattern> |
| <shadedPattern>org.apache.orc.protobuf</shadedPattern> |
| </relocation> |
| <relocation> |
| <pattern>org.apache.hadoop.hive</pattern> |
| <shadedPattern>org.apache.orc.storage</shadedPattern> |
| </relocation> |
| <relocation> |
| <pattern>org.apache.hive</pattern> |
| <shadedPattern>org.apache.orc.storage</shadedPattern> |
| </relocation> |
| </relocations> |
| <filters> |
| <filter> |
| <artifact>*:*</artifact> |
| <excludes> |
| <exclude>module-info.class</exclude> |
| <exclude>META-INF/MANIFEST.MF</exclude> |
| <exclude>META-INF/DEPENDENCIES</exclude> |
| <exclude>META-INF/LICENSE</exclude> |
| <exclude>META-INF/NOTICE</exclude> |
| <exclude>google/protobuf/**</exclude> |
| </excludes> |
| </filter> |
| </filters> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>build-helper-maven-plugin</artifactId> |
| <version>3.4.0</version> |
| <executions> |
| <execution> |
| <id>add-source</id> |
| <goals> |
| <goal>add-source</goal> |
| </goals> |
| <phase>generate-sources</phase> |
| <configuration> |
| <sources> |
| <source>${project.build.directory}/generated-sources</source> |
| </sources> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.cyclonedx</groupId> |
| <artifactId>cyclonedx-maven-plugin</artifactId> |
| <version>2.7.6</version> |
| <executions> |
| <execution> |
| <goals> |
| <goal>makeBom</goal> |
| </goals> |
| <phase>package</phase> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| |
| </project> |