We've been using DrJava for 3 years now in our intro CS courses and really like it. We were quite disappointed, however, when the latest stable release showed up with the new "Smart Run" option with behavior that is very different from the previous "Run" behavior and with the default being that "Smart Run" is enabled. We don't have any need for the "Smart Run" behavior and the error that occurs is completely unexpected and inexplicable for students who have been using DrJava and think they understand it. This option should have been provided with a new button or, at least, have defaulted to off. Better yet, couldn't it have been "smarter": if you are trying to run a class that has a main method with the right signature, execute that method; otherwise do your other smart stuff.
We can't always make everyone happy, and generally, our feedback to the "Smart Run" option has been favorable.
We appreciate your suggestion, though. Using a main method if one exists, even in an applet, is probably the right thing to do.