Here is a short breakdown of some popular libraries:
Java2D/JavaSound is a poor choice for game development. It’s slow, unreliable, unnecessarily complex, does not include any game-specific features (sprite sheets, tile map loading, camera utilities, UIs, etc), requires a lot of boilerplate code (e.g. game loop), and has a horrible sound API.
Slick2D used to be a good alternative to Java2D but it’s no longer actively maintained. There are a lot of crippling bugs in the API that may never get fixed, but for general purposes it’s stable enough and has enough of a community/wiki surrounding it to develop some small games. The API is relatively easy to learn and abstracts many OpenGL concepts such as frame buffers, textures, matrices, etc.
LibGDX is the best choice for 2D games, albeit with a slightly steeper learning curve. Since it ports to HTML5, Android and iOS, it’s also an excellent choice for 3D games. However, the 3D API is not as fully developed as some other libraries. I personally would recommend LibGDX if you want to make 2D games.
Java3D is crap; best to just ignore it.
JMonkeyEngine is a great choice if you are specifically looking to make a 3D game. It has a lot of features and tools to boot.
Ardor3D is a less mature library than jME (and thus doesn’t have all the same goodies) but it’s very well designed. Many seem to prefer the API.
LWJGL is a simple OpenGL wrapper which you shouldn’t need to use unless you plan to write your own engine from scratch. Even then, it would probably be better to just use LibGDX as your OpenGL wrapper in able to target Android/HTML5/iOS.
JOGL is another OpenGL wrapper which is less popular for Java game dev than LWJGL. However, its flexible window system, font rendering, and integration with Swing seems to make it a better candidate for applications that require hardware accelerated graphics. Ultimately it is not very different from LWJGL.