thrift.version=0.9.3
thrift.groupid=org.apache.thrift
release=true

# Jar Versions 
mvn.ant.task.version=2.1.3

# Local Install paths
install.path=/usr/local/lib
install.javadoc.path=${install.path}

# Maven dependency download locations
mvn.repo=http://repo1.maven.org/maven2
apache.repo=https://repository.apache.org/content/repositories/releases
mvn.ant.task.url=${mvn.repo}/org/apache/maven/maven-ant-tasks/${mvn.ant.task.version}
mvn.ant.task.jar=maven-ant-tasks-${mvn.ant.task.version}.jar

# Apache Maven publish 
license=http://www.apache.org/licenses/LICENSE-2.0.txt
maven-repository-url=https://repository.apache.org/service/local/staging/deploy/maven2
maven-repository-id=apache.releases.https

# Jar Versions 
mvn.ant.task.version=2.1.3

# Dependency versions
httpclient.version=4.4.1
httpcore.version=4.4.1
slf4j.version=1.7.12
servlet.version=2.5

