Bug 58652 - ImageBuilderInternalException during auto build
Summary: ImageBuilderInternalException during auto build
Status: VERIFIED FIXED
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 3.0   Edit
Hardware: PC Windows 2000
: P3 normal (vote)
Target Milestone: 3.0 M9   Edit
Assignee: Kent Johnson CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 58589 (view as bug list)
Depends on:
Blocks:
 
Reported: 2004-04-15 10:11 EDT by Knut Radloff CLA
Modified: 2004-09-23 15:55 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Knut Radloff CLA 2004-04-15 10:11:10 EDT
M8

Added two methods to a CU that had errors. Got the ImageBuilderInternalException
 shown below.
Turns out that one of the dependent projects has folders linked to a network
drive. The network folder was removed. 
The builder should handle missing linked folders just like it does out of sync
folders (it does show a nice error message for those, right?).

org.eclipse.core.internal.resources.ResourceException: Problems encountered
while copying resources.
at
org.eclipse.core.internal.localstore.FileSystemResourceManager.copy(FileSystemResourceManager.java:142)
at org.eclipse.core.internal.resources.Resource.copy(Resource.java:524)
at
org.eclipse.jdt.internal.core.builder.BatchImageBuilder$4.visit(BatchImageBuilder.java:208)
at org.eclipse.core.internal.resources.Resource$1.visitElement(Resource.java:53)
at
org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:76)
at
org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:80)
at
org.eclipse.core.internal.watson.ElementTreeIterator.iterate(ElementTreeIterator.java:119)
at org.eclipse.core.internal.resources.Resource.accept(Resource.java:63)
at
org.eclipse.jdt.internal.core.builder.BatchImageBuilder.copyExtraResourcesBack(BatchImageBuilder.java:180)
at
org.eclipse.jdt.internal.core.builder.BatchImageBuilder.cleanOutputFolders(BatchImageBuilder.java:123)
at
org.eclipse.jdt.internal.core.builder.BatchImageBuilder.build(BatchImageBuilder.java:35)
at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildAll(JavaBuilder.java:213)
at org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:141)
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:504)
at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:610)
at org.eclipse.core.runtime.Platform.run(Platform.java:521)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:137)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:224)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:165)
at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:194)
at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:610)
at org.eclipse.core.runtime.Platform.run(Platform.java:521)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:197)
at
org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:242)
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:270)
at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:137)
at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:168)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:62)
Comment 1 Kent Johnson CLA 2004-04-26 14:09:28 EDT
Didn't a problem marker show up for this?

We dump the stack trace to the log so we can track CoreExceptions... its not 
walkback per se, since we wrap CoreExceptions.
Comment 2 Knut Radloff CLA 2004-04-26 15:27:57 EDT
There was a marker that said "Problems encountered while copying resources". Can
you show a more specific error message in this scenario? It's not very helpful
in locating the cause of the problem.
Comment 3 Kent Johnson CLA 2004-04-26 16:34:17 EDT
The error message comes from Platform/Core.
Comment 4 DJ Houghton CLA 2004-04-27 13:09:21 EDT
That message comes from the Multistatus object in the CoreException. Its
children contain more specific error messages.

Kent, do you create markers for children of a multi-status object?
Comment 5 Kent Johnson CLA 2004-04-27 15:52:44 EDT
We are now displaying the message from the first child of the Multi-status.

We do not have room for all the children but the first one will give the user 
a better idea of what went wrong than the previous generic message.
Comment 6 Knut Radloff CLA 2004-04-27 16:10:17 EDT
Can you create one problem marker for each child instead of one for the toplevel
multistatus? I think that would be a more general solution.
Comment 7 Kent Johnson CLA 2004-04-28 10:23:19 EDT
The problem is its the same operation on each subdirectory/file & so the same 
error/message.

Generating 100's of errors instead of 1 doesn't help the user focus on what 
went wrong.
Comment 8 Knut Radloff CLA 2004-04-29 15:59:50 EDT
Sounds ok for this scenario although I don't know what the status children look
like. I'm wondering if core may give you other multi status objects that
actually return useful information in all status children.
Comment 9 Olivier Thomann CLA 2004-05-18 13:41:37 EDT
Verified in 200405180816 that ImageBuilderInternalException.getLocalizedMessage
returns the message of the first child in case of a Multistatus.
Comment 10 Kent Johnson CLA 2004-09-23 15:55:47 EDT
*** Bug 58589 has been marked as a duplicate of this bug. ***