Staging and Publishing on OSSRH
As part of the ongoing effort to extend the wrappers available within Tika, it has become the task of some Tika committers to actively ensure that third party (permissively licensed) artifacts are available via Maven Central. The enabling platform through which we can ensure availability of such artifacts is the Sonatype Open Source Software Repository Hosting otherwise known as OSSRH.
All artifacts on OSSRH are eventually mirrored to Maven Central.
An example of when this task has been required (and for which this documentation was produced) is the effort to make available edu.ucar official releases for Tika to consume. These artifacts are extremely valuable to extending Tika's support for detection, classification, extraction and parsing of an array of scientific MimeType's for which Unidata develop and make available excellent parsers.
Utility Script
A utility script which aims to automate this process has been posted to Tika Jira issue TIKA-1572.
Getting Started
If you wish to manually publish artifacts onto OSSRH, then simply follow the OSSRH Guide. No effort has been made to replicate this guide as the documentation is already sufficient. Once you are set up with an account, etc. please follow on to the content below.
Staging
When you have identified which artifacts you wish to upload to OSSRH simply follow the documentation on manual staging and deployment. This involves signing the components, then deploying them using the left hand Staging Upload tab on OSSRH
Conclusion
If when using this documentation you find that there are errors or that it is incomplete, please Contact Us.
Some notes on UCAR Third Party Jars
Original reasoning behind providing the document for publishing third party jar's can be attributed to the desire for us to consume release artifacts specifically from the Unidata Release Respository. In order to ensure that Tika uses the most up-to-date Unidata dependencies for handling Mimetypes such as netCDF4 & 3, HDF5 & 4, GRIB files, etc. we've compiled the following list of dependencies which must be signed then released.