Recently I saw post saying that jbullet was full of bugs and Minie was a better system, and smeting similar for lemur/nifty. Could someone tell the differences and which would be more preferable?
jbullet is an all-Java (and older) version of the bullet physics library. Minie is a newer and better maintained native wrapper around the native bullet library. They each have their uses.
Lemur is GUI library built right on top of JME scene objects and maintained by one of the core JME team members (me) with occasional contributions from the community. It has a swing-like API and is meant for coding GUIs directly from Java. Lemur is pretty popular in the JME community.
Nifty is an older and less-maintained external GUI library with some JME-specific bindings for integration. It leans more towards XML to define screens, though you can do it in code. It’s always a separate layer and never integrated directly into scenes. (For example, it’s impossible to make 3D UIs with Nifty but trivial with Lemur.) Many people consider nifty’s learning curve to be rather steep.
For a new project where you don’t have specific Java-only style constraints, Minie is probably the best choice for a physics library and Lemur is the best choice for a GUI library.
Generally: choose Minie/Lemur
why? Minie is maintained by @sgold that do great work, also it have much more features and fixes than oryginal jme-bullet lib.
Lemur? Because its well maintained by @pspeed and can do everything with it, work fast, tho it have lack of XML API(but noone said that cant write one for it). Since Nifty is almost like abandoned(well its still supported, but rarely updated)