[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[news.eclipse.tools] Re: Is Incremental build working in jdt?

Ilya,

How are you telling if an incremental build is being run?  Can you post a
more complete example of what you are doing to cause resource changes and
what you are doing to see if building is happening?

To follow up on Simon's point, the following code sequence will have
different effects depending on whether autobuild is on or off
    resource.touch(progressMonitor);  \\ resource is a java file here
    project.build(IncrementalProjectBuilder.INCREMENTAL_BUILD, pm);

If autobuild is OFF then the touch() WILL NOT cause an incremental build to
be attempted.  The following build() will start an incremental build.

If autobuild is ON then the touch() WILL cause an autobuild.  The following
build() will try an incremental build but since nothing has changed between
the touch() and the build(), there is no work to do so the build is a no-op.

Jeff

"Ilya Rozenberg" <irozenberg@xxxxxxxxxxxx> wrote in message
news:9ikd8f$oqk$1@xxxxxxxxxxxxxxxx
> I guess what I see here is that
>          resource.touch(progressMonitor);  \\ resource is a java file here
> does not trigger automatic build on resource modification
>
> You are correct that when "Perform build automatically on resource
> modification" in not checked
> project.build(IncrementalProjectBuilder.INCREMENTAL_BUILD,
progressMonitor);
> works
>
> "Simon Arsenault" <simon_arsenault@xxxxxxx> wrote in message
> news:9ik33h$lqp$1@xxxxxxxxxxxxxxxx
> > Incremental build only does something if there are changes since the
last
> > build.
> >
> > The reason why you do not see incremental build in the UI (Build menu
and
> > tool bar icon) is probably because automatic incremental build is on.
Open
> > the preferences dialog (Window > Preferences) and select the "Workbench"
> > preference page. Look at the option "Perform build automatically on
> resource
> > modification"
> >
> > Note if this option is on, then it explains why doing
> >     project.build(IncrementalProjectBuilder.INCREMENTAL_BUILD, pm);
> > did nothing - since automatic incremental build is on, every time you
make
> a
> > change the incremental build runs, therefore calling the project.build()
> > above does nothing (build was already done automatically).
> >
> > Simon :-)
> >
> >
> > "Ilya Rozenberg" <irozenberg@xxxxxxxxxxxx> wrote in message
> > news:9iinj0$9md$1@xxxxxxxxxxxxxxxx
> > > This works:
> > > project.build(IncrementalProjectBuilder.FULL_BUILD, pm);
> > > this does not:
> > > project.build(IncrementalProjectBuilder.INCREMENTAL_BUILD, pm);
> > > Incremental build action is also missing from UI.
> > >
> > >
> >
> >
>
>