Project builder problem with touch() [message #332336] |
Mon, 20 October 2008 01:49  |
Eclipse User |
|
|
|
I am writing my own project builder. In order to deal with dependencies
between projects, my builder is returning a list of projects it is
interested in. This all works just fine for the normal cases. When there
is a change to a file in one of those projects, the builder for my project
gets invoked as expected.
Consider project1 and project2. Both have the same builder associated
with them. The builder on project1 has returned project2 in a previous
call to build(). If you make a change to a file in project2, then the
builder is invoked for project1.
But, if while the builder for project2 is working it calls touch() on one
of the files in project2, then project1's builder is not called to give it
a chance to react. Instead of touch(), I've also just tried creating a
new file or deleting one as part of project2's builder. Nothing that I
change while project2's builder is running will result in project1's
builder being invoked.
Perhaps I'm doing something wrong? (This is all on top of an RCP built on
top of Eclipse 3.3.2.)
|
|
|
|
Re: Project builder problem with touch() [message #332411 is a reply to message #332381] |
Tue, 21 October 2008 02:36  |
Eclipse User |
|
|
|
Thanks for pointing this out. The bug report was very interesting to
read. But the bottom line was that you are right that Eclipse will not
retrigger a builder based on resource changes made during a build. Seems
like I'm not the only one with this problem, so I hope they address it
sometime.
In the meantime, I realized that I can finesse this by pushing my "touch"
into a job that I schedule to run later -- and, therefore, outside the
build context. So this does the trick on getting my other builder to run
as I wanted. I hope this trick may prove useful for others in a similar
position.
|
|
|
Powered by
FUDForum. Page generated in 0.02839 seconds