Hey hcat gurus -

Today I started looking at publishing HCatalog to maven
(https://issues.apache.org/jira/browse/HCATALOG-132) and found its
pretty straightforward.

One thing we need to do is file a request with the repo administrators
giving us access to publish. Its documented here:

    http://www.apache.org/dev/publishing-maven-artifacts.html#signing-up

Does the following look good? If so, I'll open the request ticket.

"""
Project URL: http://incubator.apache.org/hcatalog/

SVN URL: http://svn.apache.org/repos/asf/incubator/hcatalog/

Maven Group Ids: org.apache.hcatalog

Managed By This TLP Project: Incubator
"""

I included our whole pom at the end of this message (not sure if
attachments are stripped). I see two janky things that I'm not sure
how we want to address:

(a) One of the major goals of HCat is to let many different processing
frameworks all use the metastore. For example, pig, mapreduce, and I
need to look at scalding soon. We don't have a "core" jar, then
per-framework jars (hcatalog-pig.jar for example). This means anyone
depending on hcat will have transitive dependencies on all sorts of
processing frameworks they don't actually use.

What does everyone think about renaming the current jar
"hcatalog-core-0.5.0-dev.jar"? It would always contain the core stuff,
and input/output formats. Processing-frameworks like pig could be
extracted into "hcatalog-pig-0.5.0-dev.jar". New frameworks would go
straight into subproject jars.

(b) We explicitly depend on many jars that really we should get
transitively from Hive. antlr is an example. I looked into this and
the Hive pom lists most dependencies as "compile" not "runtime" so we
don't pull them in. This would really shrink our pom file after
fixing.

--travis





<?xml version="1.0" encoding="UTF-8"?>
<!--
   Apache Maven 2 POM generated by Apache Ivy
   http://ant.apache.org/ivy/
   Apache Ivy version: 2.1.0 20090925235825
-->
<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>
  <groupId>org.apache.hcatalog</groupId>
  <artifactId>hcatalog</artifactId>
  <packaging>jar</packaging>
  <version>0.5.0-dev</version>
  <dependencies>
    <dependency>
      <groupId>org.antlr</groupId>
      <artifactId>antlr</artifactId>
      <version>3.0.1</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.antlr</groupId>
      <artifactId>antlr-runtime</artifactId>
      <version>3.0.1</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.pig</groupId>
      <artifactId>pig</artifactId>
      <version>0.8.0</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>commons-cli</groupId>
      <artifactId>commons-cli</artifactId>
      <version>1.2</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>commons-lang</groupId>
      <artifactId>commons-lang</artifactId>
      <version>2.4</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>commons-logging</groupId>
      <artifactId>commons-logging</artifactId>
      <version>1.0.4</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>commons-logging</groupId>
      <artifactId>commons-logging-api</artifactId>
      <version>1.0.4</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.hadoop</groupId>
      <artifactId>hadoop-tools</artifactId>
      <version>1.0.2</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.hadoop</groupId>
      <artifactId>hadoop-core</artifactId>
      <version>1.0.2</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.hadoop</groupId>
      <artifactId>hadoop-test</artifactId>
      <version>1.0.2</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>javax.jms</groupId>
      <artifactId>jms</artifactId>
      <version>1.1</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.activemq</groupId>
      <artifactId>activemq-core</artifactId>
      <version>5.5.0</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.activemq</groupId>
      <artifactId>kahadb</artifactId>
      <version>5.5.0</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>javax.management.j2ee</groupId>
      <artifactId>management-api</artifactId>
      <version>1.1-rev-1</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>com.google.code.p.arat</groupId>
      <artifactId>rat-lib</artifactId>
      <version>0.5.1</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.vafer</groupId>
      <artifactId>jdeb</artifactId>
      <version>0.8</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.codehaus.jackson</groupId>
      <artifactId>jackson-mapper-asl</artifactId>
      <version>1.7.3</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.codehaus.jackson</groupId>
      <artifactId>jackson-core-asl</artifactId>
      <version>1.7.3</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.hive</groupId>
      <artifactId>hive-metastore</artifactId>
      <version>0.10.0-SNAPSHOT</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.hive</groupId>
      <artifactId>hive-common</artifactId>
      <version>0.10.0-SNAPSHOT</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.hive</groupId>
      <artifactId>hive-exec</artifactId>
      <version>0.10.0-SNAPSHOT</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.hive</groupId>
      <artifactId>hive-cli</artifactId>
      <version>0.10.0-SNAPSHOT</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.hive</groupId>
      <artifactId>hive-hbase-handler</artifactId>
      <version>0.10.0-SNAPSHOT</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.maven</groupId>
      <artifactId>maven-ant-tasks</artifactId>
      <version>2.1.3</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.thrift</groupId>
      <artifactId>libfb303</artifactId>
      <version>0.7.0</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.10</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>com.google.guava</groupId>
      <artifactId>guava</artifactId>
      <version>11.0</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
      <version>1.6.1</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-log4j12</artifactId>
      <version>1.6.1</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <version>1.2.16</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>javax.jdo</groupId>
      <artifactId>jdo2-api</artifactId>
      <version>2.3-ec</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.datanucleus</groupId>
      <artifactId>datanucleus-core</artifactId>
      <version>2.0.3</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.datanucleus</groupId>
      <artifactId>datanucleus-connectionpool</artifactId>
      <version>2.0.3</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.datanucleus</groupId>
      <artifactId>datanucleus-enhancer</artifactId>
      <version>2.0.3</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.datanucleus</groupId>
      <artifactId>datanucleus-rdbms</artifactId>
      <version>2.0.3</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>commons-dbcp</groupId>
      <artifactId>commons-dbcp</artifactId>
      <version>1.4</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>commons-pool</groupId>
      <artifactId>commons-pool</artifactId>
      <version>1.5.4</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.derby</groupId>
      <artifactId>derby</artifactId>
      <version>10.4.2.0</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>commons-configuration</groupId>
      <artifactId>commons-configuration</artifactId>
      <version>1.6</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>commons-httpclient</groupId>
      <artifactId>commons-httpclient</artifactId>
      <version>3.0.1</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.hive</groupId>
      <artifactId>hive-builtins</artifactId>
      <version>0.10.0-SNAPSHOT</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.mortbay.jetty</groupId>
      <artifactId>jetty</artifactId>
      <version>6.1.26</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.mortbay.jetty</groupId>
      <artifactId>jetty-util</artifactId>
      <version>6.1.26</version>
      <optional>true</optional>
    </dependency>
  </dependencies>
</project>

Reply via email to