Skip to main content



      Home
Home » Language IDEs » Java Development Tools (JDT) » BUILD CLASSES STRICTLY INCREMENTAL(Java Class Building)
BUILD CLASSES STRICTLY INCREMENTAL [message #1692201] Tue, 14 April 2015 06:02 Go to next message
Eclipse UserFriend
Sometimes, when we have no activity in a project for longer time and then check out new classes for a project, netherleless if 'Auto Build' or 'Manual Build' is activated, all classes are build, and not only the new or updated classes and there dependancies.

How could it be avoided that in such cases all classes are build.

Thanks for any suggestions and help
Re: BUILD CLASSES STRICTLY INCREMENTAL [message #1692251 is a reply to message #1692201] Tue, 14 April 2015 10:09 Go to previous messageGo to next message
Eclipse UserFriend
Jochen,

Comments below.

On 14/04/2015 2:51 PM, Jochen Schindler wrote:
> Sometimes, when we have no activity in a project for longer time and
> then check out new classes for a project,
What does "check out" mean?
> netherleless if 'Auto Build' or 'Manual Build' is activated, all
> classes are build, and not only the new or updated classes and there
> dependancies.
I'm pretty sure that when a project needs to build all downstream
projects are built.
>
> How could it be avoided that in such cases all classes are build.
You'd need to more clearly spell out in which cases you think too much
is being recompiled, and the JDT team would need to be able to reproduce
it so they could analyze the problem to understand and perhaps fix it.
But I can't imagine how anyone can have suggestions just based on what
you've described...
>
> Thanks for any suggestions and help
Certainly I've not seen or experienced such behavior. But I know if I
make a change in some project that all other projects depend on, all
those other dependent projects are rebuilt...
Re: BUILD CLASSES STRICTLY INCREMENTAL [message #1692317 is a reply to message #1692251] Wed, 15 April 2015 01:53 Go to previous messageGo to next message
Eclipse UserFriend
Thanks for answering.

In Detail. We have a larger project with hundreds of classes. The project is status opened in eclipse. If for example nothing is done on the project for one week locally, and then checked out, even if only one class has changed, the whole projects classes are rebuild, not only this one class and there dependencies.

If you work constantly on the project locally and then checkout from repository, only the respective classes and there dependencies are rebuild.

This is regardless which option of rebuild - auto or manual - is chosen.

This behaviour happens on all of the developer computers here. Eclipse JDT EE standard installation from eclipse download source, Keppler 4.3.1 with Win CVS

Hope the is more precisely
Re: BUILD CLASSES STRICTLY INCREMENTAL [message #1692326 is a reply to message #1692317] Wed, 15 April 2015 02:48 Go to previous messageGo to next message
Eclipse UserFriend
Jochen,

Comments below.


On 15/04/2015 7:53 AM, Jochen Schindler wrote:
> Thanks for answering.
>
> In Detail. We have a larger project with hundreds of classes. The
> project is status opened in eclipse.
I'm not sure what "status opened" means.
> If for example nothing is done on the project for one week locally,
> and then checked out,
I'm not sure what "checkout" means. Perhaps this implies the time stamps
of all files in the project changes. I can't know because I don't know
what the terminology means...
> even if only one class has changed, the whole projects classes are
> rebuild, not only this one class and there dependencies.
I think the dependencies are analyzed per project...
>
> If you work constantly on the project locally and then checkout from
> repository, only the respective classes and there dependencies are
> rebuild.
What tool is doing the "checkout"?
>
> This is regardless which option of rebuild - auto or manual - is chosen.
>
> This behaviour happens on all of the developer computers here. Eclipse
> JDT EE standard installation from eclipse download source, Keppler
> 4.3.1 with Win CVS
So one question is whether this checkout process changes the timestamps
of all files or just somehow new files...
> Hope the is more precisely
I'm still a little confused... Certainly the JDT team has greater
insight into the underlying details of just how increment the process
actually is...
Re: BUILD CLASSES STRICTLY INCREMENTAL [message #1692331 is a reply to message #1692326] Wed, 15 April 2015 03:19 Go to previous messageGo to next message
Eclipse UserFriend
Thanks for answer:
- A Project in the workspace could be 'open' or 'closed'
- You check out files from a repository i.e version control system like cvs
- The timestamp is only changed for source files in the project which are checked out i.e updated
- if only one java source file changes, 99,9% this could not effect all classes of the project
- Checkout is done via std eclipse cvs client plugin
Re: BUILD CLASSES STRICTLY INCREMENTAL [message #1692729 is a reply to message #1692331] Fri, 17 April 2015 09:17 Go to previous messageGo to next message
Eclipse UserFriend
Does anybody have any suggestion for this?
Re: BUILD CLASSES STRICTLY INCREMENTAL [message #1692933 is a reply to message #1692729] Mon, 20 April 2015 12:46 Go to previous messageGo to next message
Eclipse UserFriend
If I understand you correctly, you're leaving project x alone for a while, but someone else checks in a change to maybe just one class in that project. Then, after a week or so has passed, you check out that project to get that one changed class, and the entire project rebuilds. Yes?

I don't know how WinCVS works, and I think it's probably key to understanding what's going on. But it seems to me that Ed Merks is on the right track, asking about timestamps and such. My first guess is that the change that you're checking out results in an update to the classpath or manifest in your project. But that wouldn't happen every time, would it? Unless something weird is going on in your workflow.

So my second guess is that WinCVS isn't preserving the old timestamps. But that would have been noticed by someone before now, wouldn't it?

So my third guess is that WinCVS and/or the Eclipse Team plug-in are changing something about all the files. Maybe somewhere the files are being stored with Windows line terminators (\r\n) while somewhere else the \r is being stripped off, then replaced on checkout. I know some version control systems do that sort of thing, and that would register as a change, maybe, and mess up the timestamps, resulting in a complete rebuild. How far out on the limb have I gotten now?

That's the best I can do as a thought experiment. If you want more, you'll probably have to provide specifics including file timestamps before and after checkout.
Re: BUILD CLASSES STRICTLY INCREMENTAL [message #1693962 is a reply to message #1692933] Wed, 29 April 2015 10:56 Go to previous message
Eclipse UserFriend
The thing is, that only the timestamps of the new or updated file via CVS checkout changed. Alle other timestamp are kept as is.
Previous Topic:quick assistance with java
Next Topic:Strange compilation problems with com.sun.jdi.* classes on Gerrit
Goto Forum:
  


Current Time: Wed May 07 16:54:55 EDT 2025

Powered by FUDForum. Page generated in 0.05777 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top