jMonkeyEngine 3.1 Alpha 2 released!

Originally published at:
Alpha 2 is here! Let’s get excited. You can get the engine distribution package on GitHub, or use Maven to get the artifacts using JCenter (NEW). The new default release process will be properly documented by the time we go stable. Note: Due to lack of maintainers, we’ve decided to make an engine release separately from the SDK.…

Upvote on Reddit!


Can you please make a link available to the compiled JAR files?

I’d appreciate it. Probably others would too.

I have downloaded the Master zip from github, but I don’t particularly want the source code. Not at this stage anyway.

Maybe there should be a link on the DOWNLOAD page. Currently it only has 3.1Alpha1 SDK download links.


It’s not super-pretty and requires a little drilling but all of the jars are here:

You can also drill around here:

Would be nice to have them all conveniently listed in one place, though.

The distribution package includes all the jars, it is available here:

So I’ve added the dependencies for 3.1 into my project using gradle and I get an error when building: Could not find lessvoid:nifty-default-controls:1.4.1. Was it added to jme3-niftygui? Or should I add something else to my dependencies?

Here are my dependencies just in case:

ext.jmeVersion = "[3.1,)" 
dependencies {
    compile "org.jmonkeyengine:jme3-core:$jmeVersion"
    compile "org.jmonkeyengine:jme3-desktop:$jmeVersion"
    compile "org.jmonkeyengine:jme3-lwjgl:$jmeVersion"
    compile "org.jmonkeyengine:jme3-effects:$jmeVersion"
    compile "org.jmonkeyengine:jme3-jogg:$jmeVersion"
    compile "org.jmonkeyengine:jme3-jogl:$jmeVersion"
    compile "org.jmonkeyengine:jme3-networking:$jmeVersion"
    compile "org.jmonkeyengine:jme3-terrain:$jmeVersion"
    compile "org.jmonkeyengine:jme3-bullet:$jmeVersion"
    compile "org.jmonkeyengine:jme3-bullet-native:$jmeVersion"
    compile "org.jmonkeyengine:jme3-niftygui:$jmeVersion"
    runtime files("assets")

Won’t find anything unless you added some additional repositories… and you’ll also need the nifty repo in your respositories list, too, I guess.

The reason we didn’t have the nifty jar in jcenter is because there is no proper public maven-style release of the nifty dependency. Just the one from the nifty-specific repo.

Ya you we’re right, I found the links that I needed at GitHub - nifty-gui/nifty-gui: Your Open Source Java OpenGL GUI. Interactive user interfaces for games or similar applications. LWJGL, JOGL, JME or Java2d rendering.. Thanks!

There is a release posted at GitHub: Releases · jMonkeyEngine/jmonkeyengine · GitHub.

Just download the zip.

Ahem… I’m using a master SDK from some commits ago. How do I upgrade my copy to alpha-2?
(without building it myself)


EDIT : sorry missed that line : “(without building it myself)”
You’ll have to build it yourself

As announced in JME 3.1 alpha 2 release note , it supports LWJGL3 (beta) thanks to @DannyJo . And LWJGL3 team added support for Vulkan .So can we use Vulkan in JME ? (Curios to know )

From an end users point of view, no. From a JME developer, probably not with the current version of LWJGL we use in that module but possibly later on when we get that updated and LWJGL’s Vulkan bindings are a bit more solid.


This release confuses me completly. I downloaded that zip file… and now what?! Background, I’m not a java dev. I took this engine because the tutorials were / still are greate and everything magically worked. Never did I found some like this download an engine which just work and examples which work. I guess today I would skip it as the hurdle seems extremly high near to impossible for me.

So if there is no SDK with what do you guys work then? Bash, gradle and vim? Not really I guess. But how then? Some said they didnt start the sdk in a week just gradle everything. But yeah some editor like thing you use I guess :smile: or wrote your own one? :wink:
No serious is there a tutorial how I can use this new release then? I thought first “ok just copy that into your old jmeplattform directory” but the folder structure looks complettly different (or I look at the wrong folders). Any hint?

Look at your SDK window.

Do you see your project on the left in the tree?

Open the tree.

Do you see something there that says something like “dependencies” “Librariers” or something. It should be near the bottom for your section of the project tree.

Open that up.

Do you see all of those jars? The JME libs and stuff. Remove them ALL.

Right click on the folder that you opened to see all of those jars.

Do you see how it says “Add jar dependency…” or somesuch.?

Click on that.

Find the jars you downloaded in that zip.

Add the ones you want.


Edit: how did you add the zay-es libs and stuff originally?

1 Like

Migration to the new Alpha 2 done, without issues ;), thank you guys for your efforts


I’ve set up an Eclipse project following this instructions.

The basic application works. I get a blue cube, etc. However, when I try to attach a BulletAppState via

bulletAppState = new BulletAppState(); 

I get a following error:

Uncaught exception thrown in Thread[jME3 Main,5,main]
NoClassDefFoundError: com/bulletphysics/collision/dispatch/CollisionObject

Thank you!

You are missing jme3-jbullet.jar or jme3-bullet.jar, could that be?

No. It’s in the Referenced Libraries list. Plus, I can instantiate a BulletAppState without errors. The error pops out when I try to attach it to the stateManager.

Right click my project “-> Properties → Libraries → Add JAR/Folder”
The jme3 stuff I can add with “-> Properties → Libraries → Add Library …” There is as well Groovy and JUnit in this list. So you tell me I have to remove all those jme3-xxx “Library” and add it with “Add JAR/Folder” then? Isn’t there a more convenient way than copy this stuff all around? Some kind of a repository? If there is any what would be the dependency I whould have to add in the “Plugin” section then.
But yeah then I can maybe make my “bundle” I copy that to may different machines and add everything as JAR/Folder.

So what exactly is the difference between “Add JAR/Folder” and “Add Library…” then? And what is the better way? Maybe some gradle magics? Is there a tutorial to do it right or isn’t there any do-it-right-thing just a do-it-somehow-thing?

And where do those *.so hidding then? In one of the jar’s? The core one maybe?

Yeah you see I’m still confused …

Libraries are collections of jars that you configure. You do it right in the tools menu I think. It’s just the the SDK comes with a few hard coded… but you can create your own if you like. Then you want have to manually add the jars every time.

…though personally I never found that too difficult.