Which Maven repository for QuPath?


We’ve recently been trying to make QuPath more developer-friendly. As a start, we’ve rewritten our build scripts and added GitHub Actions. Now we’d like to host the core jars in a Maven-friendly way, and javadocs in a human-friendly way.

My initial idea was to hack together something with GitHub packages and GitHub pages. However, after setting it up GitHub packages I finally understood they really do mean that authentication is required just to install a package – which means that a developer needs to generate a Personal Access Token before they can begin. The end result is that it actually raises the bar to building the software.

I’ve seen lots of complaints about this, but no clear indication if/when it will change.

Before taking the plunge to Maven Central, I wanted to check what folks here were doing, which led me to Bintray alternative?

Therefore, I wanted to ask: would maven.scijava.org be an option for QuPath?

I totally understand if not (we’re Gradle-based and aren’t inheriting from pom-scijava), but I’d appreciate any tips / advice / options for where we should be.




For sure! QuPath is welcome to deploy there!

Furthermore, if you extend the pom-scijava parent POM, we already have deployment to Maven Central solved—at least from Travis CI, and we’re working on switching to GitHub Actions. We have a scijava-ci user that deploys to OSS Sonatype, so developers of ImageJ plugins etc. do not need to worry about making accounts on the Sonatype JIRA, or any of that other bureaucracy. Our ultimate goal is to transition all core libraries to Maven Central, for greater developer convenience, as well as greater security guarantees—particularly GPG-signed JAR files.

The scenery and sciview projects are also using Gradle, while still benefiting from pom-scijava bill of materials. @gBarbieri put a lot of work into that. Not sure what the status is, but if QuPath could also leverage that work, it would be awesome.

Happy to discuss further how to meet all your requirements to make this happen.