Community
Participate
Working Groups
Build 20021009 1. Import org.eclipse.core.boot as binary project 2. Turn Java delta tracing on 3. Import org.eclipse.core.boot as source project Observe: You get the following delta (there is no indication that boot.jar was removed from the classpath) UPDATING Model with Delta: [Thread[ModalContext,5,main]:Java Model[*]: {CHILDREN} org.eclipse.core.boot[*]: {CHILDREN} [project root][*]: {REMOVED FROM CLASSPATH}]: FIRING PRE_AUTO_BUILD Delta [Thread[ModalContext,5,main]]: Java Model[*]: {CHILDREN} org.eclipse.core.boot[*]: {CHILDREN} [project root][*]: {REMOVED FROM CLASSPATH} MERGING 2 DELTAS [Thread[ModalContext,5,main]] Java Model[*]: {CHILDREN} org.eclipse.core.boot[*]: {CHILDREN} [project root][*]: {REMOVED FROM CLASSPATH} Java Model[*]: {CHILDREN} org.eclipse.core.boot[*]: {CONTENT} ResourceDelta(/org.eclipse.core.boot/.classpath)[*] ResourceDelta(/org.eclipse.core.boot/.project)[*] ResourceDelta(/org.eclipse.core.boot/about.html)[*] ResourceDelta(/org.eclipse.core.boot/boot.jar)[-] ResourceDelta(/org.eclipse.core.boot/boot.xml)[*] ResourceDelta(/org.eclipse.core.boot/bootsrc.zip)[*] ResourceDelta(/org.eclipse.core.boot/build.properties)[+] ResourceDelta(/org.eclipse.core.boot/plugin.properties)[*] ResourceDelta(/org.eclipse.core.boot/plugin.xml)[*] ResourceDelta(/org.eclipse.core.boot/scripts)[+] ResourceDelta(/org.eclipse.core.boot/splash.bmp)[*] ResourceDelta(/org.eclipse.core.boot/src-boot)[+] FIRING POST_CHANGE Delta [Thread[ModalContext,5,main]]: Java Model[*]: {CHILDREN} org.eclipse.core.boot[*]: {CHILDREN} [project root][*]: {REMOVED FROM CLASSPATH} ResourceDelta(/org.eclipse.core.boot/.classpath)[*] ResourceDelta(/org.eclipse.core.boot/.project)[*] ResourceDelta(/org.eclipse.core.boot/about.html)[*] ResourceDelta(/org.eclipse.core.boot/boot.jar)[-] ResourceDelta(/org.eclipse.core.boot/boot.xml)[*] ResourceDelta(/org.eclipse.core.boot/bootsrc.zip)[*] ResourceDelta(/org.eclipse.core.boot/build.properties)[+] ResourceDelta(/org.eclipse.core.boot/plugin.properties)[*] ResourceDelta(/org.eclipse.core.boot/plugin.xml)[*] ResourceDelta(/org.eclipse.core.boot/scripts)[+] ResourceDelta(/org.eclipse.core.boot/splash.bmp)[*] ResourceDelta(/org.eclipse.core.boot/src-boot)[+] Snapshot took: 471 milliseconds. UPDATING Model with Delta: [Thread[ModalContext,5,main]:Java Model[*]: {CHILDREN} org.eclipse.core.boot[*]: {CHILDREN} src-boot[*]: {ADDED TO CLASSPATH} D:\JDK1.4.1\jre\lib\rt.jar[*]: {ADDED TO CLASSPATH}]: FIRING PRE_AUTO_BUILD Delta [Thread[ModalContext,5,main]]: Java Model[*]: {CHILDREN} org.eclipse.core.boot[*]: {CHILDREN} src-boot[*]: {ADDED TO CLASSPATH} D:\JDK1.4.1\jre\lib\rt.jar[*]: {ADDED TO CLASSPATH} MERGING 2 DELTAS [Thread[ModalContext,5,main]] Java Model[*]: {CHILDREN} org.eclipse.core.boot[*]: {CHILDREN} src-boot[*]: {ADDED TO CLASSPATH} D:\JDK1.4.1\jre\lib\rt.jar[*]: {ADDED TO CLASSPATH} Java Model[*]: {CHILDREN} org.eclipse.core.boot[*]: {CONTENT} ResourceDelta(/org.eclipse.core.boot/.classpath)[*] FIRING POST_CHANGE Delta [Thread[ModalContext,5,main]]: Java Model[*]: {CHILDREN} org.eclipse.core.boot[*]: {CHILDREN} src-boot[*]: {ADDED TO CLASSPATH} D:\JDK1.4.1\jre\lib\rt.jar[*]: {ADDED TO CLASSPATH} ResourceDelta(/org.eclipse.core.boot/.classpath)[*]
Sounds like a must fix.
Fixed by remembering the old package fragments roots in the delta processor when a project is deleted. The SetClasspathOperation uses these roots to compute the delta.
Verified.