orc
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency> <groupId>org.apache.orc</groupId> <artifactId>orc</artifactId> <version>2.1.2</version> </dependency>
<?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>27</version> </parent> <groupId>org.apache.orc</groupId> <artifactId>orc</artifactId> <version>2.1.2</version> <packaging>pom</packaging> <name>Apache ORC</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> <modules> <module>shims</module> <module>core</module> <module>mapreduce</module> <module>tools</module> <module>examples</module> </modules> <properties> <bouncycastle.version>1.80</bouncycastle.version> <brotli4j.version>1.18.0</brotli4j.version> <checkstyle.version>10.21.1</checkstyle.version> <example.dir>${project.basedir}/../../examples</example.dir> <hadoop.version>3.4.1</hadoop.version> <java.version>17</java.version> <javadoc.location>${project.basedir}/../target/javadoc</javadoc.location> <junit.version>5.12.0</junit.version> <maven-assembly-plugin.version>3.7.1</maven-assembly-plugin.version> <maven-dependency-plugin.version>3.8.1</maven-dependency-plugin.version> <maven-shade-plugin.version>3.6.0</maven-shade-plugin.version> <maven.compiler.release>17</maven.compiler.release> <maven.compiler.useIncrementalCompilation>false</maven.compiler.useIncrementalCompilation> <maven.version>3.9.9</maven.version> <mockito.version>5.10.0</mockito.version> <orc-format.version>1.1.0</orc-format.version> <!-- Build Properties --> <project.build.outputTimestamp>2025-05-03T22:24:31Z</project.build.outputTimestamp> <protobuf.version>3.25.5</protobuf.version> <slf4j.version>2.0.16</slf4j.version> <storage-api.version>2.8.1</storage-api.version> <surefire.version>3.5.2</surefire.version> <test.tmp.dir>${project.build.directory}/testing-tmp</test.tmp.dir> <zstd-jni.version>1.5.6-10</zstd-jni.version> </properties> <dependencyManagement> <dependencies> <!-- intra-project dependencies --> <dependency> <groupId>org.apache.orc</groupId> <artifactId>orc-format</artifactId> <version>${orc-format.version}</version> </dependency> <dependency> <groupId>org.apache.orc</groupId> <artifactId>orc-shims</artifactId> <version>2.1.2</version> <exclusions> <exclusion> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> </exclusion> <exclusion> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-hdfs</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.orc</groupId> <artifactId>orc-core</artifactId> <version>2.1.2</version> </dependency> <dependency> <groupId>org.apache.orc</groupId> <artifactId>orc-mapreduce</artifactId> <version>2.1.2</version> </dependency> <dependency> <groupId>org.apache.orc</groupId> <artifactId>orc-tools</artifactId> <version>2.1.2</version> </dependency> <!-- inter-project dependencies --> <dependency> <groupId>com.esotericsoftware</groupId> <artifactId>kryo-shaded</artifactId> <version>4.0.2</version> </dependency> <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.10.1</version> </dependency> <dependency> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-java</artifactId> <version>${protobuf.version}</version> </dependency> <dependency> <groupId>commons-cli</groupId> <artifactId>commons-cli</artifactId> <version>1.9.0</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.17.0</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>aircompressor</artifactId> <version>2.0.2</version> </dependency> <dependency> <groupId>com.github.luben</groupId> <artifactId>zstd-jni</artifactId> <version>${zstd-jni.version}</version> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-client-api</artifactId> <version>${hadoop.version}</version> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-client-runtime</artifactId> <version>${hadoop.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupId>org.apache.hive</groupId> <artifactId>hive-storage-api</artifactId> <version>${storage-api.version}</version> <exclusions> <exclusion> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-hdfs</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.jetbrains</groupId> <artifactId>annotations</artifactId> <version>17.0.0</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>${slf4j.version}</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <version>${slf4j.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupId>org.threeten</groupId> <artifactId>threeten-extra</artifactId> <version>1.8.0</version> </dependency> <dependency> <groupId>com.aayushatharva.brotli4j</groupId> <artifactId>brotli4j</artifactId> <version>${brotli4j.version}</version> <optional>true</optional> </dependency> <!-- test inter-project --> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>33.4.0-jre</version> <scope>test</scope> </dependency> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-api</artifactId> <version>${junit.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-params</artifactId> <version>${junit.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <version>${mockito.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-junit-jupiter</artifactId> <version>${mockito.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.objenesis</groupId> <artifactId>objenesis</artifactId> <version>3.3</version> <scope>test</scope> </dependency> <dependency> <groupId>net.bytebuddy</groupId> <artifactId>byte-buddy</artifactId> <version>1.17.0</version> <scope>test</scope> </dependency> <dependency> <groupId>net.bytebuddy</groupId> <artifactId>byte-buddy-agent</artifactId> <version>1.17.0</version> <scope>test</scope> </dependency> <dependency> <groupId>com.google.auto.service</groupId> <artifactId>auto-service</artifactId> <version>1.1.1</version> <optional>true</optional> </dependency> </dependencies> </dependencyManagement> <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> <pluginRepositories> <pluginRepository> <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> </pluginRepository> <pluginRepository> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>false</enabled> </snapshots> <id>central</id> <url>https://repo.maven.apache.org/maven2</url> </pluginRepository> </pluginRepositories> <build> <pluginManagement> <plugins> <plugin> <groupId>com.diffplug.spotless</groupId> <artifactId>spotless-maven-plugin</artifactId> <version>2.43.0</version> <configuration> <pom> <sortPom> <!-- Don't sort modules, dependencies, plugins https://github.com/Ekryd/sortpom/wiki/Parameters-that-can-affect-your-build --> <sortProperties>true</sortProperties> </sortPom> </pom> <java> <includes> <include>src/java/**/*.java</include> </includes> <excludes> <exclude>src/test/**/*.java</exclude> </excludes> <importOrder> <order>,javax|java,\#</order> </importOrder> <removeUnusedImports></removeUnusedImports> </java> </configuration> <executions> <execution> <id>analyze-compile</id> <goals> <goal>check</goal> </goals> <phase>test</phase> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>3.4.2</version> <configuration> <archive> <manifest> <addDefaultImplementationEntries>true</addDefaultImplementationEntries> <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries> </manifest> </archive> </configuration> <executions> <execution> <goals> <goal>test-jar</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>com.github.spotbugs</groupId> <artifactId>spotbugs-maven-plugin</artifactId> <version>4.9.1.0</version> <configuration> <includeFilterFile>spotbugs-include.xml</includeFilterFile> <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile> </configuration> <dependencies> <dependency> <groupId>com.github.spotbugs</groupId> <artifactId>spotbugs</artifactId> <version>4.7.3</version> </dependency> </dependencies> <executions> <execution> <id>analyze-compile</id> <goals> <goal>check</goal> </goals> <phase>test</phase> </execution> </executions> </plugin> <plugin> <groupId>org.apache.rat</groupId> <artifactId>apache-rat-plugin</artifactId> <configuration> <excludeSubProjects>false</excludeSubProjects> <excludes> <exclude>**/data/**</exclude> <exclude>**/*.iml</exclude> <exclude>**/*.json</exclude> <exclude>**/*.json.gz</exclude> <exclude>**/*.orc</exclude> <exclude>**/*.out</exclude> <exclude>**/*.schema</exclude> <exclude>**/*.md</exclude> <exclude>**/m2.conf</exclude> <exclude>**/target/**</exclude> <exclude>.idea/**</exclude> <exclude>**/*.iml</exclude> <exclude>**/dependency-reduced-pom.xml</exclude> <exclude>.mvn/jvm.config</exclude> </excludes> </configuration> <executions> <execution> <goals> <goal>check</goal> </goals> <phase>package</phase> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId> <version>3.6.0</version> <configuration> <sourceDirectories> <directory>${basedir}/src/java</directory> <directory>${basedir}/src/test</directory> </sourceDirectories> <configLocation>checkstyle.xml</configLocation> <failOnViolation>true</failOnViolation> </configuration> <dependencies> <dependency> <groupId>com.puppycrawl.tools</groupId> <artifactId>checkstyle</artifactId> <version>${checkstyle.version}</version> </dependency> </dependencies> <executions> <execution> <goals> <goal>check</goal> </goals> <phase>package</phase> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <version>${maven-dependency-plugin.version}</version> <configuration> <failOnWarning>true</failOnWarning> <ignoreNonCompile>true</ignoreNonCompile> </configuration> <executions> <execution> <goals> <goal>analyze-only</goal> </goals> <phase>package</phase> </execution> </executions> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>build-helper-maven-plugin</artifactId> <version>3.6.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.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>io.github.zlika</groupId> <artifactId>reproducible-build-maven-plugin</artifactId> <version>0.17</version> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-enforcer-plugin</artifactId> <version>3.5.0</version> <dependencies> <dependency> <groupId>org.codehaus.mojo</groupId> <artifactId>extra-enforcer-rules</artifactId> <version>1.10.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> <ignoredScopes>test</ignoredScopes> <ignoredScopes>provided</ignoredScopes> <excludes> <exclude>org.threeten:threeten-extra</exclude> </excludes> </enforceBytecodeVersion> <bannedDependencies> <excludes> <exclude>org.apache.hadoop:hadoop-common</exclude> <exclude>org.apache.hadoop:hadoop-hdfs-client</exclude> <exclude>org.apache.hadoop:hadoop-mapreduce-client-core</exclude> <exclude>org.apache.hadoop:hadoop-mapreduce-client-jobclient</exclude> </excludes> <searchTransitive>true</searchTransitive> </bannedDependencies> </rules> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <configuration> <doclint>none</doclint> <links> <link>https://hadoop.apache.org/docs/r${hadoop.version}/api</link> <link>https://orc.apache.org/api/orc-core</link> <link>https://orc.apache.org/api/orc-mapreduce</link> <link>https://orc.apache.org/api/orc-tools</link> </links> <offlineLinks> <offlineLink> <url>https://orc.apache.org/api/orc-core</url> <location>${javadoc.location}/api/orc-core</location> </offlineLink> <offlineLink> <url>https://orc.apache.org/api/orc-mapreduce</url> <location>${javadoc.location}/api/orc-mapreduce</location> </offlineLink> </offlineLinks> <reportOutputDirectory>${javadoc.location}/api</reportOutputDirectory> <notimestamp>true</notimestamp> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-antrun-plugin</artifactId> <executions> <execution> <id>setup-test-dirs</id> <goals> <goal>run</goal> </goals> <phase>process-test-resources</phase> <configuration> <target> <delete dir="${test.tmp.dir}"></delete> <mkdir dir="${test.tmp.dir}"></mkdir> </target> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> <configuration> <attach>true</attach> </configuration> <executions> <execution> <id>create-source-jar</id> <goals> <goal>jar-no-fork</goal> <goal>test-jar-no-fork</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <trimStackTrace>false</trimStackTrace> <reuseForks>false</reuseForks> <argLine>-Xmx2048m -XX:+IgnoreUnrecognizedVMOptions --add-opens=java.base/java.nio=ALL-UNNAMED --add-opens=java.security.jgss/sun.security.krb5=ALL-UNNAMED</argLine> <environmentVariables> <TZ>US/Pacific</TZ> <LANG>en_US.UTF-8</LANG> </environmentVariables> <useSystemClassLoader>false</useSystemClassLoader> <failIfNoTests>false</failIfNoTests> <systemPropertyVariables> <test.tmp.dir>${test.tmp.dir}</test.tmp.dir> <example.dir>${example.dir}</example.dir> </systemPropertyVariables> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-project-info-reports-plugin</artifactId> </plugin> <plugin> <groupId>io.github.zlika</groupId> <artifactId>reproducible-build-maven-plugin</artifactId> <executions> <execution> <goals> <goal>strip-jar</goal> </goals> <phase>package</phase> </execution> </executions> </plugin> <plugin> <groupId>org.cyclonedx</groupId> <artifactId>cyclonedx-maven-plugin</artifactId> <version>2.7.11</version> <executions> <execution> <goals> <goal>makeBom</goal> </goals> <phase>package</phase> </execution> </executions> </plugin> </plugins> </build> <profiles> <profile> <id>cmake</id> <build> <directory>${build.dir}</directory> </build> </profile> <profile> <!-- a profile to check the source for common problems --> <id>analyze</id> <build> <plugins> <plugin> <groupId>com.diffplug.spotless</groupId> <artifactId>spotless-maven-plugin</artifactId> </plugin> <plugin> <groupId>com.github.spotbugs</groupId> <artifactId>spotbugs-maven-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.rat</groupId> <artifactId>apache-rat-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> </plugin> </plugins> </build> </profile> <profile> <!-- a developer profile to build some benchmarks --> <id>benchmark</id> <modules> <module>bench</module> </modules> </profile> </profiles> </project>