Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Already on GitHub? Sign in to your account

Fun Projects: Maven support #57

Open
wants to merge 2 commits into
from

Conversation

Projects
None yet
5 participants

shyiko commented Dec 17, 2011

Hi everybody.

Please review pull request which integrates Apache Ivy (http://ant.apache.org/ivy).
Complie, runtime and test dependencies are managed by Ivy. As a result,
there is no need in lib directory anymore (all thirdparty dependencies can be retrieved using
resolve-dependencies task).

Voldemort JAR, along with javadoc and sources can now be published to Maven Central (through
Sonatype OSS Maven Repository). Please see comments inside build.properties for guidance.
Also, please check developers section of pom.template. I didn't have email addresses of
voldemort authors so it might be some of them are wrongly stated.
groupId has been chosen as com.github.voldemort. You might want to change it as well.
publish-artifacts task is responsible for artifacts generation (voldemort-<version>.jar, voldemort-<version>-sources.jar, voldemort-<version>-javadoc.jar, voldemort-<version>.pom),
signing (required by Maven Central as per http://central.sonatype.org/pages/requirements.html),
and upload to Sonatype OSS Maven Repository (http://central.sonatype.org/pages/ossrh-guide.html).
Once artifacts have been published you'll need to go to https://oss.sonatype.org and close staging repository.
After that, request will be reviewed by Sonatype and synchronized to Maven Central (usually, it takes no more than 24h).
Please note, that I didn't change contributed modules.

Thanks.

P.S. Following thirdparty libraries were not included to ivy.xml (as I didn't find any usages):

<dependency org="com.thoughtworks.paranamer" name="paranamer" rev="2.1"/>
<dependency org="org.slf4j" name="slf4j-api" rev="1.5.6"/>
<dependency org="org.slf4j" name="slf4j-log4j12" rev="1.5.6"/>
<dependency org="xerces" name="xercesImpl" rev="2.9.1"/>

You might want to add them in case they are really needed.

shyiko commented Dec 17, 2011

Steps to follow:

  1. download http://repo1.maven.org/maven2/org/apache/ivy/ivy/2.2.0/ivy-2.2.0.jar and save it to ANT_HOME/lib
  2. change gpg.passphrase inside build.properties
  3. change nexus.username and nexus.password inside build.properties
  4. ant publish-artifacts
  5. login into https://oss.sonatype.org and open "Staging Repositories"
  6. choose your repository and "Close" it (validation should pass without errors)

otisg commented Jan 6, 2012

Big +1 for pushing this to master!

panchmp commented Jan 11, 2012

+100 for this

@abh1nay abh1nay was assigned Sep 25, 2012

tibraga commented May 5, 2015

+1 please! :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment