Summary: | [builder] Build is building too many resources on save | ||
---|---|---|---|
Product: | [Eclipse Project] JDT | Reporter: | Mario Grgic <mgrgic> |
Component: | Core | Assignee: | JDT-Core-Inbox <jdt-core-inbox> |
Status: | CLOSED INVALID | QA Contact: | |
Severity: | normal | ||
Priority: | P3 | CC: | Tod_Creasey |
Version: | 3.1 | Keywords: | needinfo |
Target Milestone: | 3.1 RC2 | ||
Hardware: | PC | ||
OS: | Windows 2000 | ||
Whiteboard: |
Description
Mario Grgic
2004-10-29 11:48:59 EDT
Tod, any comments? A build will lock the workspace so any operation that also locks the workspace will have to wait. However the builder does this incrementally so it only holds onto projects as it needs them. With 10,000 classes being built completely however I imagine things get blocked quite frequently. Can you not build incrementally? Why do you need a full build? > Can you not build incrementally? Why do you need a full build?
Well, that's another thing. I have auto refresh and build turned on in my
preferences. I modify and save a file in project A, and Eclipse goes on and
rebuilds projects B and C in addition to A, and I know 100% that B and C do
not depend on A in any way, and in especially not the file I modified. I
believe this is another unrelated problem. In addition, I often times get into
a state where Eclipse can no longer resolve dependances between projects. It
tells me A can't build before some other B is built and it refuses to auto
build B and recommends I do a complete clean up. This is why I find myself
building the world a lot.
This did not happen in earlier versions of the Eclipse and with the same
project structure.
OK I think your real issue here is that the builder is locking the workspace for too long. Moving to JDT Core for comment. The root of all your problems looks to be your project dependencies. Anytime a project cannot be built it affects every project that depends on it and can cause full builds to occur. Are you sure you do not have any cycles between your projects' dependencies? Or classpath errors? Or missing types on your classpath? Yes, there are cycles and cyclic dependences between projects which the compiler deals with fine, when built from the makefile. Eclipse used to take care of this automatically too. I don't know if anything has been changed in this code in the later versions of Eclipse. Can you still reproduce in 3.1m6 ? If so, please reopen after having added steps to reproduce. Close as there's more than 2 months without any feedback on this issue => consider it does no longer happen Sorry for the lack of feedback. I could not use any post M3 build in production environment because tabbing and indentation did not work correctly until M7. Currently I'm running RC1 and I it's much better. The UI does not lock up any more while the build is going on, so I don't notice any problems. As of now 'LATER' and 'REMIND' resolutions are no longer supported. Please reopen this bug if it is still valid for you. |