When you add web capabilities to your project, it changes your output path and selects the ‘Allow output folders for source folders’ option. I was curious about how that option ever got selected for me as I never remembered doing it. Now I know.
Once the ‘add web capabilities’ completes, I open project settings, go to build path, change the output folder, and unselect the ‘allow output…’ checkbox. This gives me the behavior I want for build. It would be nice if enabling web capabilities would give you the options to not change the project configuration. It already nicely allows you to not add J2EE libs and to not create web.xml. An advanced setting for legacy projects that let the user choose how to set up the build path would be a nice feature to have.