Eclipse uses the Standard Widget Toolkit (SWT) library for its rendering.
SWT supports a number of "backends", which means that it passes its rendering requests to some other native library.
In the case of Ubuntu, it uses
GTK2 as its backend.
So when Eclipse requests
SWT to do some graphics operation, SWT asks
GTK2 to do it.
But sometimes SWT and GTK2 don't play together nicely, and SWT can misunderstand the style information of GTK2. You see, Eclipse uses some widget designs (like that "cool bar" with the curve) that are not standard GTK2 widgets. And the widget customizations are implemented within SWT itself, not within GTK2. So SWT tries to "guess" what appropriate color type from GTK2 would be the most appropriate.
Since Ubuntu's theme is very non standard among GTK2 themes, it appears that SWT guesses wrong about the intended colors.
I would suggest looking through Ubuntu Software Center for some other GTK2 engines and/or themes, such as murrine or clearlooks, and install them. Then, you can use
gnome-tweak-tool, or manually select your GTK2 theme by creating a symlink from
~/.gtkrc-2.0. This should, hopefully, make
SWT pick up on the new GTK2 theme when it renders Eclipse, and you should at least get interesting results ;)
Since Eclipse Juno isn't in the Ubuntu official repositories (or is it?!? you tell me!) I don't think this can be considered a proper Ubuntu bug, but you're welcome to file a defect in Launchpad against the Eclipse package if the built-in Ubuntu packages of Eclipse exhibit the same behavior. As far as I know, the Eclipse packages in Ubuntu 12.04 are for Eclipse Indigo, the prior release, because Juno wasn't out by the time 12.04 was released.