Community
Participate
Working Groups
Build Identifier: Version: Indigo Service Release 1 Build id: 20110916-0149 When a compiler option has been changed (through Preferences / Java / Compiler / Errors/Warnings), a dialog box appears and tells you that “The Error/Warning settings have changed” and that “A full rebuild is required for changes to take effect” and asks you if you want to “Do the full build now”. The question should not be asked when the workspace contains no project to possibly rebuild. Reproducible: Always Steps to Reproduce: 1. Grab a fresh eclipse install. (Optional, but just to be sure.) 2. Start eclipse, pointing it to a blank, new workspace directory. (So that it starts with no projects.) 3. Go straight to Preferences, change some Java compiler option, e.g., ask for “Include 'assert' in null analysis”. Click Apply or OK.
This bug is related to https://bugs.eclipse.org/bugs/show_bug.cgi?id=358509, but this one is about not asking the question to rebuild the projects, whereas the existing one, AFAIU, is about which projects to effectively build when rebuilding.
If you have no projects the rebuild anyway ends up as a no-op, so I don't think the question itself should cause any problem! We do not intend to change this behaviour, unless there's a real problem being caused because of it.
Well, that’s a view point. You know for sure the infamous "Are you sure" question some Windows versions ask to their users. It became a symbol of the brittleness of Windows, although your comment apply: it does not hurt asking a question. Agreed, the rebuild does not hurt. The problem is only that an unuseful question appears in a dialog box and the user has to click "yes" or "no", which is strange as it doesn’t change anything whether the user answers yes or no. I think it deserves a bug report( with importance "minor") as it gives an impression of brittleness. Consider my use case: I installed a new version of eclipse, when it started, as suggested by the welcome page, I read the "what's new" section, and while reading it decided to visit the compiler settings page as it was talking about that, and made a few changes there. So the first impression I got when starting eclipse is that of a software which asks unuseful questions, like a vulgar Windows asking "are you sure"! (Note that it’s even worse than Are you sure as here there’s even nothing to be sure about.) Once again, I agree it’s not an important bug. But I believe those little things, when added up, can make the difference between a user having a feeling of a robust software or a not-so-robust one... As a last point: eclipse is (among others) a developer tool. As such, it should be exemplary in terms of user interface and implement the best practices everywhere it is possible. It does generally do the job quite well, except in this very case.
(In reply to comment #3) We can probably avoid asking a question whose answer does not matter. Fix to go in org.eclipse.jdt.internal.ui.preferences.OptionsConfigurationBlock.processChanges(IWorkbenchPreferenceContainer) something like IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot(); IProject[] projects = root.getProjects();
Indeed minor, but let's get rid of this bug report. Fixed with commit ffbb42b179c89e29e5a0b195dcfa65e55a0bfe83.