I think that they chose to make this illegal for two reasons: it's potentially confusing, and it's never necessary. One could argue that Sun has allowed plenty of other things that are potentially confusing and not necessary, but still, they do make
some effort to limit such things.
It's potentially confusing because inner classes are often associated with an instance of an outer class. If have two different outer class instances, and a static variable in an inner class inside those instances, should it be possible to have two different values of the static variable? Or just one? Probably just one makes more sense, but the way some people visualize inner classes, two might make sense too.
It's never necessary because you can always simply define the static variable as part of the outer class - either as static in the outside class, or nonstatic if you do want it to have more than one value
per outer class instance. There's really no need to attach it to the inner class if it's not an instance variable of that inner class. It's pointless.