- Gradle
- Sphinx - required for building documentation
- GnuPG - required for signing artifacts for MavenCentral
To generate project JARs:
gradle jars
The project and dependency JARs are located in build/libs/
.
To test the build:
gradle test
Test report is available at build/reports/tests/index.html
.
To be done by project administator only
Create ~/.gradle/gradle.properties
with the following keys:
- signing.keyId
- signing.password
- signing.secretKeyRingFile
- sonatypeUsername
- sonatypePassword
To generate and upload the archives to Sonatype repository:
gradle uploadArchives
Finally, go to Sonatype and close, check and publish the archives. Once published, the archive is synchronized with Maven Central in about 2 hours.
To generate API documentation:
gradle javadoc
The javadoc is available at docs/javadoc/index.html
.
To generate the developer's guide and related documentation in HTML format:
gradle doc
The guide is available at htdocs/doc/html/index.html
.
The Gradle build script simply executes a make html
command in turn calls Sphinx build script to generate the documentation. The Gradle build script suppresses the output of Sphinx. In case of any problems, it may be useful to look at the output by directly invoking make html
.
Follow the steps below to publish the fjagepy python package to PyPI
-
Install "twine":
pip install twine
-
Install "wheel":
pip install wheel
-
Create a source distribution:
python gateways/python/setup.py sdist
-
Create a wheel for the project:
python gateways/python/setup.py bdist_wheel
-
Create an account on PyPI
-
Once you have an account, you can upload your distribution to PyPI using twine:
twine upload gateways/python/dist/*