I designed Java curriculum around Greenfoot for a few large summer camps and education programs in Silicon Valley, but have since turned away from the platform completely because of how it limits students from developing games independently on their own. When they realize how much more involved it is to write similar games in Java, they stick to the confines of Greenfoot, where flashy images and motion are easy to implement. Since then, I've realized it's more useful to have students implement a game like Flappy Bird with Java's native functions for drawing ovals and rectangles, rather than by explaining how to do it with Actors and Worlds.
However, it is an extremely effective way to get students interested in Java, and that is often the most important objective.
I've helped teach a few camps myself and have similar opinions. Alice allowed for impressive graphics but not a lot depth to the programming (at least the early version we had at the time). Building Pong level stuff from more primitive capabilities in real Java was just as rewarding and develops skills that are a lot more directly applicable elsewhere. Learning Java by making Minecraft mods was really interesting: the initial learning curve is a bit steep due to the messy working environment, but it very quickly leads to more advanced topics as the students want to enhance the behaviors of existing creatures, add new graphical effects, or do something that requires extending the protocol for communication between the client and server. If Minecraft were open-source and the codebase was cleaned up a bit, it would be an awesome teaching tool.
However, it is an extremely effective way to get students interested in Java, and that is often the most important objective.