Platform libraries
This section is for Snap developers or users who upload their own JAR files (for use as part of a JDBC account definition).
The Snap Pack or the JAR files can not contain any of the provided platform libraries (refer to Provided Platform Dependencies).
Building Snap Packs
The Snap Pack's pom file must exclude any of the listed libraries if they are brought in by a 3rd-party library. If they are needed by the Snap Pack itself as a first class dependency, then the provided scope can be used.
An easy way to quickly verify the JAR files is to look at the /target directory and open the Snap ZIP file after it was built with mvn clean install. The ZIP file will show all the libraries that were brought in during the build. If any of the libraries are listed in the Provided Platform Dependencies section, then they must be excluded using the exclusion tag.
This link can be used to determine if any of the listed libraries are brought in by the 3rd-party libraries which are part of the Snap Pack.
As an example, org.apache.axis2 would bring in its own commons-logging library. Below we exclude it since it is provided by the platform.
<dependency>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-saaj</artifactId>
<version>1.6.2</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
Building custom JAR files
Custom JAR files that are being used as part of the Snap Pack's accounts must ensure that none of the listed dependencies are brought in, and hence must be removed from the JAR file.
Provided platform dependencies
[
{
"dependency": {
"groupId": "cascading",
"artifactId": "cascading-core",
"version": "2.6.0"
}
},
{
"dependency": {
"groupId": "cascading",
"artifactId": "cascading-hadoop2-mr1",
"version": "2.6.0"
}
},
{
"dependency": {
"groupId": "cascading",
"artifactId": "cascading-local",
"version": "2.6.0"
}
},
{
"dependency": {
"groupId": "cascading",
"artifactId": "cascading-test",
"version": "2.0.8"
}
},
{
"dependency": {
"groupId": "cascading",
"artifactId": "cascading-xml",
"version": "2.6.0"
}
},
{
"dependency": {
"groupId": "com.amazonaws",
"artifactId": "aws-java-sdk",
"version": "1.9.1"
}
},
{
"dependency": {
"groupId": "com.ebay",
"artifactId": "cascading-hive",
"version": "0.0.3-SNAPSHOT"
}
},
{
"dependency": {
"groupId": "com.fasterxml.jackson.core",
"artifactId": "jackson-annotations",
"version": "2.0.0"
}
},
{
"dependency": {
"groupId": "com.fasterxml.jackson.core",
"artifactId": "jackson-core",
"version": "2.0.0"
}
},
{
"dependency": {
"groupId": "com.fasterxml.jackson.core",
"artifactId": "jackson-databind",
"version": "2.0.0"
}
},
{
"dependency": {
"groupId": "com.fasterxml.jackson.datatype",
"artifactId": "jackson-datatype-joda",
"version": "2.1.1"
}
},
{
"dependency": {
"groupId": "com.fasterxml.uuid",
"artifactId": "java-uuid-generator",
"version": "3.1.3"
}
},
{
"dependency": {
"groupId": "com.google.code.findbugs",
"artifactId": "jsr305",
"version": "2.0.1"
}
},
{
"dependency": {
"groupId": "com.google.guava",
"artifactId": "guava",
"version": "14.0.1"
}
},
{
"dependency": {
"groupId": "com.google.inject",
"artifactId": "guice",
"version": "4.0-beta5"
}
},
{
"dependency": {
"groupId": "com.google.inject",
"artifactId": "guice-parent",
"version": "4.0-beta5"
}
},
{
"dependency": {
"groupId": "com.google.inject.extensions",
"artifactId": "guice-assistedinject",
"version": "4.0-beta5"
}
},
{
"dependency": {
"groupId": "com.google.inject.extensions",
"artifactId": "guice-multibindings",
"version": "4.0-beta5"
}
},
{
"dependency": {
"groupId": "com.google.inject.extensions",
"artifactId": "guice-servlet",
"version": "4.0-beta5"
}
},
{
"dependency": {
"groupId": "com.googlecode.cqengine",
"artifactId": "cqengine",
"version": "1.0.3"
}
},
{
"dependency": {
"groupId": "com.googlecode.grep4j",
"artifactId": "grep4j",
"version": "1.8.7"
}
},
{
"dependency": {
"groupId": "com.googlecode.jmockit",
"artifactId": "jmockit",
"version": "0.999.17",
"scope": "test"
}
},
{
"dependency": {
"groupId": "com.googlecode.lambdaj",
"artifactId": "lambdaj",
"version": "2.3.3"
}
},
{
"dependency": {
"groupId": "com.h2database",
"artifactId": "h2",
"version": "1.4.182"
}
},
{
"dependency": {
"groupId": "com.jayway.jsonpath",
"artifactId": "json-path",
"version": "0.8.6"
}
},
{
"dependency": {
"groupId": "com.jcraft",
"artifactId": "jsch",
"version": "0.1.51"
}
},
{
"dependency": {
"groupId": "com.jolbox",
"artifactId": "bonecp",
"version": "0.8.0-fix1"
}
},
{
"dependency": {
"groupId": "com.lmax",
"artifactId": "disruptor",
"version": "3.2.1"
}
},
{
"dependency": {
"groupId": "com.mchange",
"artifactId": "c3p0",
"version": "0.9.2.1"
}
},
{
"dependency": {
"groupId": "com.ning",
"artifactId": "async-http-client",
"version": "1.8.11"
}
},
{
"dependency": {
"groupId": "com.Snaplogic",
"artifactId": "jcc",
"version": "4.0"
}
},
{
"dependency": {
"groupId": "com.Snaplogic",
"artifactId": "jcommon",
"version": "4.0"
}
},
{
"dependency": {
"groupId": "com.Snaplogic",
"artifactId": "jexpression",
"version": "4.0"
}
},
{
"dependency": {
"groupId": "com.Snaplogic",
"artifactId": "jfs",
"version": "4.0"
}
},
{
"dependency": {
"groupId": "com.Snaplogic",
"artifactId": "jgroundproxy",
"version": "4.0"
}
},
{
"dependency": {
"groupId": "com.Snaplogic",
"artifactId": "jpipe",
"version": "4.0"
}
},
{
"dependency": {
"groupId": "com.Snaplogic",
"artifactId": "jruby",
"version": "1.0"
}
},
{
"dependency": {
"groupId": "com.Snaplogic",
"artifactId": "jschema",
"version": "4.0"
}
},
{
"dependency": {
"groupId": "com.Snaplogic",
"artifactId": "jsdk",
"version": "4.0"
}
},
{
"dependency": {
"groupId": "com.Snaplogic",
"artifactId": "jSnapi",
"version": "4.0"
}
},
{
"dependency": {
"groupId": "com.Snaplogic",
"artifactId": "jutils",
"version": "4.0"
}
},
{
"dependency": {
"groupId": "com.Snaplogic",
"artifactId": "jutils",
"type": "test-jar",
"scope": "test",
"version": "4.0"
}
},
{
"dependency": {
"groupId": "com.Snaplogic",
"artifactId": "mrjob",
"version": "4.0"
}
},
{
"dependency": {
"groupId": "com.Snaplogic",
"artifactId": "mrjob",
"classifier": "Snapreduce",
"version": "4.0"
}
},
{
"dependency": {
"groupId": "com.Snaplogic",
"artifactId": "yplex",
"version": "4.0"
}
},
{
"dependency": {
"groupId": "com.sun.jersey",
"artifactId": "jersey-client",
"version": "1.9"
}
},
{
"dependency": {
"groupId": "com.thoughtworks.xstream",
"artifactId": "xstream",
"version": "1.4.2"
}
},
{
"dependency": {
"groupId": "com.yammer.metrics",
"artifactId": "metrics-annotation",
"version": "2.1.3"
}
},
{
"dependency": {
"groupId": "com.yammer.metrics",
"artifactId": "metrics-core",
"version": "2.1.3"
}
},
{
"dependency": {
"groupId": "com.yammer.metrics",
"artifactId": "metrics-graphite",
"version": "2.1.3"
}
},
{
"dependency": {
"groupId": "com.yammer.metrics",
"artifactId": "metrics-log4j",
"version": "2.1.3"
}
},
{
"dependency": {
"groupId": "com.yammer.metrics",
"artifactId": "metrics-servlet",
"version": "2.1.3"
}
},
{
"dependency": {
"groupId": "commons-beanutils",
"artifactId": "commons-beanutils",
"version": "1.8.3"
}
},
{
"dependency": {
"groupId": "commons-beanutils",
"artifactId": "commons-beanutils-core",
"version": "1.8.0"
}
},
{
"dependency": {
"groupId": "commons-cli",
"artifactId": "commons-cli",
"version": "1.2"
}
},
{
"dependency": {
"groupId": "commons-codec",
"artifactId": "commons-codec",
"version": "1.8"
}
},
{
"dependency": {
"groupId": "commons-collections",
"artifactId": "commons-collections",
"version": "3.2.1"
}
},
{
"dependency": {
"groupId": "commons-configuration",
"artifactId": "commons-configuration",
"version": "1.6"
}
},
{
"dependency": {
"groupId": "commons-fileupload",
"artifactId": "commons-fileupload",
"version": "1.2.2"
}
},
{
"dependency": {
"groupId": "commons-httpclient",
"artifactId": "commons-httpclient",
"version": "3.0.1"
}
},
{
"dependency": {
"groupId": "commons-io",
"artifactId": "commons-io",
"version": "2.4"
}
},
{
"dependency": {
"groupId": "commons-lang",
"artifactId": "commons-lang",
"version": "2.6"
}
},
{
"dependency": {
"groupId": "commons-logging",
"artifactId": "commons-logging",
"version": "1.1.3"
}
},
{
"dependency": {
"groupId": "commons-net",
"artifactId": "commons-net",
"version": "3.3"
}
},
{
"dependency": {
"groupId": "commons-validator",
"artifactId": "commons-validator",
"version": "1.4.0"
}
},
{
"dependency": {
"groupId": "commons-vfs",
"artifactId": "commons-vfs",
"version": "1.0"
}
},
{
"dependency": {
"groupId": "de.odysseus.staxon",
"artifactId": "staxon",
"version": "1.0"
}
},
{
"dependency": {
"groupId": "de.undercouch",
"artifactId": "bson4jackson",
"version": "2.0.0"
}
},
{
"dependency": {
"groupId": "javax.inject",
"artifactId": "javax.inject",
"version": "1"
}
},
{
"dependency": {
"groupId": "javax.jms",
"artifactId": "javax.jms-api",
"version": "2.0"
}
},
{
"dependency": {
"groupId": "javax.mail",
"artifactId": "mail",
"version": "1.4.7"
}
},
{
"dependency": {
"groupId": "javax.servlet",
"artifactId": "jsp-api",
"version": "2.0"
}
},
{
"dependency": {
"groupId": "javax.servlet",
"artifactId": "servlet-api",
"version": "2.5",
"scope": "provided"
}
},
{
"dependency": {
"groupId": "jcifs",
"artifactId": "jcifs",
"version": "1.3.17"
}
},
{
"dependency": {
"groupId": "jdom",
"artifactId": "jdom",
"version": "1.1"
}
},
{
"dependency": {
"groupId": "joda-time",
"artifactId": "joda-time",
"version": "2.1"
}
},
{
"dependency": {
"groupId": "junit",
"artifactId": "junit",
"version": "4.11",
"scope": "test"
}
},
{
"dependency": {
"groupId": "log4j",
"artifactId": "log4j",
"version": "1.2.17"
}
},
{
"dependency": {
"groupId": "mysql",
"artifactId": "mysql-connector-java",
"version": "5.1.29"
}
},
{
"dependency": {
"groupId": "net.bull.javamelody",
"artifactId": "javamelody-core",
"version": "1.43.0"
}
},
{
"dependency": {
"groupId": "net.minidev",
"artifactId": "json-smart",
"version": "1.1.1"
}
},
{
"dependency": {
"groupId": "net.sf.json-lib",
"artifactId": "json-lib",
"version": "2.4",
"classifier": "jdk15"
}
},
{
"dependency": {
"groupId": "net.sf.opencsv",
"artifactId": "opencsv",
"version": "2.0"
}
},
{
"dependency": {
"groupId": "net.sourceforge.saxon",
"artifactId": "saxon",
"version": "9.1.0.8"
}
},
{
"dependency": {
"groupId": "net.sourceforge.saxon",
"artifactId": "saxon",
"version": "9.1.0.8",
"classifier": "dom"
}
},
{
"dependency": {
"groupId": "org.antlr",
"artifactId": "antlr",
"version": "3.4"
}
},
{
"dependency": {
"groupId": "org.antlr",
"artifactId": "antlr-runtime",
"version": "3.4"
}
},
{
"dependency": {
"groupId": "org.antlr",
"artifactId": "antlr4",
"version": "4.0"
}
},
{
"dependency": {
"groupId": "org.antlr",
"artifactId": "antlr4-runtime",
"version": "4.0"
}
},
{
"dependency": {
"groupId": "org.apache.activemq",
"artifactId": "activemq-all",
"version": "5.10.0"
}
},
{
"dependency": {
"groupId": "org.apache.commons",
"artifactId": "commons-lang3",
"version": "3.1"
}
},
{
"dependency": {
"groupId": "org.apache.commons",
"artifactId": "commons-math",
"version": "2.1"
}
},
{
"dependency": {
"groupId": "org.apache.commons",
"artifactId": "commons-math3",
"version": "3.2"
}
},
{
"dependency": {
"groupId": "org.apache.commons",
"artifactId": "commons-pool2",
"version": "2.2"
}
},
{
"dependency": {
"groupId": "org.apache.hadoop",
"artifactId": "hadoop-client",
"version": "2.5.0"
}
},
{
"dependency": {
"groupId": "org.apache.hadoop",
"artifactId": "hadoop-common",
"version": "2.5.0"
}
},
{
"dependency": {
"groupId": "org.apache.hadoop",
"artifactId": "hadoop-hdfs",
"version": "2.5.0"
}
},
{
"dependency": {
"groupId": "org.apache.hadoop",
"artifactId": "hadoop-yarn-client",
"version": "2.5.0",
"exclusions": {
"exclusion": [
{
"groupId": "tomcat",
"artifactId": "jasper-compiler"
},
{
"groupId": "tomcat",
"artifactId": "jasper-runtime"
},
{
"groupId": "com.sun.jersey",
"artifactId": "jersey-core"
},
{
"groupId": "org.slf4j",
"artifactId": "slf4j-log4j12"
}
]
}
}
},
{
"dependency": {
"groupId": "org.apache.hadoop",
"artifactId": "hadoop-yarn-common",
"version": "2.5.0"
}
},
{
"dependency": {
"groupId": "org.apache.hive",
"artifactId": "hive-exec",
"version": "0.13.1"
}
},
{
"dependency": {
"groupId": "org.apache.httpcomponents",
"artifactId": "httpclient",
"version": "4.2.3"
}
},
{
"dependency": {
"groupId": "org.apache.httpcomponents",
"artifactId": "httpcore",
"version": "4.2.2"
}
},
{
"dependency": {
"groupId": "org.apache.logging.log4j",
"artifactId": "log4j-1.2-api",
"version": "2.0-rc1"
}
},
{
"dependency": {
"groupId": "org.apache.logging.log4j",
"artifactId": "log4j-api",
"version": "2.0-rc1"
}
},
{
"dependency": {
"groupId": "org.apache.logging.log4j",
"artifactId": "log4j-core",
"version": "2.0-rc1"
}
},
{
"dependency": {
"groupId": "org.apache.logging.log4j",
"artifactId": "log4j-jcl",
"version": "2.0-rc1"
}
},
{
"dependency": {
"groupId": "org.apache.logging.log4j",
"artifactId": "log4j-jcl",
"version": "2.0-rc1"
}
},
{
"dependency": {
"groupId": "org.apache.logging.log4j",
"artifactId": "log4j-slf4j-impl",
"version": "2.0-rc1"
}
},
{
"dependency": {
"groupId": "org.apache.velocity",
"artifactId": "velocity",
"version": "1.7"
}
},
{
"dependency": {
"groupId": "org.bouncycastle",
"artifactId": "bcprov-jdk15on",
"version": "1.49"
}
},
{
"dependency": {
"groupId": "org.codehaus.woodstox",
"artifactId": "woodstox-core-asl",
"version": "4.2.0",
"exclusions": {
"exclusion": [
{
"groupId": "xml-apis",
"artifactId": "xml-apis"
},
{
"groupId": "xerces",
"artifactId": "xmlParserAPIs"
},
{
"groupId": "xalan",
"artifactId": "xalan"
}
]
}
}
},
{
"dependency": {
"groupId": "org.dbunit",
"artifactId": "dbunit",
"version": "2.4.8",
"scope": "test"
}
},
{
"dependency": {
"groupId": "org.easymock",
"artifactId": "easymock",
"version": "3.1",
"scope": "test"
}
},
{
"dependency": {
"groupId": "org.eclipse.jetty",
"artifactId": "jetty-http",
"version": "9.1.1.v20140108"
}
},
{
"dependency": {
"groupId": "org.eclipse.jetty",
"artifactId": "jetty-server",
"version": "9.1.1.v20140108"
}
},
{
"dependency": {
"groupId": "org.eclipse.jetty",
"artifactId": "jetty-servlet",
"version": "9.1.1.v20140108"
}
},
{
"dependency": {
"groupId": "org.eclipse.jetty",
"artifactId": "jetty-util",
"version": "9.1.1.v20140108"
}
},
{
"dependency": {
"groupId": "org.eclipse.jetty",
"artifactId": "jetty-webapp",
"version": "9.1.1.v20140108"
}
},
{
"dependency": {
"groupId": "org.eclipse.jetty.websocket",
"artifactId": "websocket-api",
"version": "9.1.1.v20140108"
}
},
{
"dependency": {
"groupId": "org.eclipse.jetty.websocket",
"artifactId": "websocket-server",
"version": "9.1.1.v20140108"
}
},
{
"dependency": {
"groupId": "org.eclipse.jetty.websocket",
"artifactId": "websocket-servlet",
"version": "9.1.1.v20140108"
}
},
{
"dependency": {
"groupId": "org.glassfish.external",
"artifactId": "jmxremote_optional-repackaged",
"version": "3.1.1"
}
},
{
"dependency": {
"groupId": "org.glassfish.grizzly",
"artifactId": "grizzly-framework",
"version": "2.3.14"
}
},
{
"dependency": {
"groupId": "org.glassfish.grizzly",
"artifactId": "grizzly-http",
"version": "2.3.14"
}
},
{
"dependency": {
"groupId": "org.glassfish.grizzly",
"artifactId": "grizzly-websockets",
"version": "2.3.14"
}
},
{
"dependency": {
"groupId": "org.hamcrest",
"artifactId": "hamcrest-all",
"version": "1.1"
}
},
{
"dependency": {
"groupId": "org.hamcrest",
"artifactId": "hamcrest-core",
"version": "1.3",
"scope": "test"
}
},
{
"dependency": {
"groupId": "org.jboss.resteasy",
"artifactId": "async-http-servlet-3.0",
"version": "3.0.6.Final"
}
},
{
"dependency": {
"groupId": "org.jboss.resteasy",
"artifactId": "jaxrs-api",
"version": "3.0.6.Final"
}
},
{
"dependency": {
"groupId": "org.jboss.resteasy",
"artifactId": "resteasy-guice",
"version": "3.0.6.Final"
}
},
{
"dependency": {
"groupId": "org.jboss.resteasy",
"artifactId": "resteasy-jackson-provider",
"version": "3.0.6.Final"
}
},
{
"dependency": {
"groupId": "org.jboss.resteasy",
"artifactId": "resteasy-jaxb-provider",
"version": "3.0.6.Final"
}
},
{
"dependency": {
"groupId": "org.jboss.resteasy",
"artifactId": "resteasy-jaxrs",
"version": "3.0.6.Final"
}
},
{
"dependency": {
"groupId": "org.jolokia",
"artifactId": "jolokia-core",
"version": "1.2.3"
}
},
{
"dependency": {
"groupId": "org.jooq",
"artifactId": "jooq",
"version": "3.1.0"
}
},
{
"dependency": {
"groupId": "org.jooq",
"artifactId": "jooq-meta",
"version": "3.1.0"
}
},
{
"dependency": {
"groupId": "org.mapdb",
"artifactId": "mapdb",
"version": "1.0.1"
}
},
{
"dependency": {
"groupId": "org.ow2.easywsdl",
"artifactId": "easywsdl-ext-wsdl4complexwsdl",
"version": "2.3"
}
},
{
"dependency": {
"groupId": "org.ow2.easywsdl",
"artifactId": "easywsdl-schema",
"version": "2.3"
}
},
{
"dependency": {
"groupId": "org.ow2.easywsdl",
"artifactId": "easywsdl-wsdl",
"version": "2.3"
}
},
{
"dependency": {
"groupId": "org.python",
"artifactId": "jython-standalone",
"version": "2.7-b3"
}
},
{
"dependency": {
"groupId": "org.scribe",
"artifactId": "scribe",
"version": "1.3.2"
}
},
{
"dependency": {
"groupId": "org.slf4j",
"artifactId": "slf4j-api",
"version": "1.7.7"
}
},
{
"dependency": {
"groupId": "org.supercsv",
"artifactId": "supercsv",
"version": "1.52"
}
},
{
"dependency": {
"groupId": "oro",
"artifactId": "oro",
"version": "2.0.8"
}
},
{
"dependency": {
"groupId": "postgresql",
"artifactId": "postgresql",
"version": "8.4-702.jdbc4"
}
},
{
"dependency": {
"groupId": "spiffy",
"artifactId": "spiffy",
"version": "0.05"
}
},
{
"dependency": {
"groupId": "stax",
"artifactId": "stax",
"version": "1.2.0"
}
},
{
"dependency": {
"groupId": "xerces",
"artifactId": "xmlParserAPIs",
"version": "2.6.2"
}
},
{
"dependency": {
"groupId": "xom",
"artifactId": "xom",
"version": "1.2.5",
"exclusions": {
"exclusion": [
{
"groupId": "xerces",
"artifactId": "xercesImpl"
},
{
"groupId": "xalan",
"artifactId": "xalan"
},
{
"groupId": "xml-apis",
"artifactId": "xml-apis"
}
]
}
}
}
]