I am currently having a bit of a struggle. I wrote a software that uses some methods from Mojangs Minecraft Server Software.

The project is open source and I want to compile, test, etc. my project using a CI software. To build the project the CI needs the Minecraft Server Software as a library.

Mojang does not allow to distribute the decompiled Server code. Now I am wondering if I could just remove the code from all the method bodies and just upload the library without the actual code (just the classes' interfaces with method declarations, variables, etc.) and then be on the legal side.


You're describing uploading the APIs of the classes. Unfortunately, the current status of Oracle v. Google is that APIs are copyrightable, and to my knowledge, Mojang hasn't given any special license or exception for just their APIs.

You can still make your CI work legally, though. Although you can't distribute or upload their binaries, Mojang will let anyone download them from minecraft.net, with no authentication needed. (If you've ever used the Forge development environment, this is how it gets Minecraft.) Just make a step of your CI build be to download the binary like that, and just be sure to delete it or otherwise make sure it isn't available as a build artifact at the end of the build.

  • Thats kind of the way I did it in the meantime. – MysteriousPerson Jun 7 '19 at 7:35

Not the answer you're looking for? Browse other questions tagged or ask your own question.