Bug 19465 - Need full build to get rid of red Xs
Summary: Need full build to get rid of red Xs
Status: RESOLVED FIXED
Alias: None
Product: PDE
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 2.0   Edit
Hardware: PC Windows 2000
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Wassim Melhem CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 17268 (view as bug list)
Depends on:
Blocks:
 
Reported: 2002-06-06 04:01 EDT by Dirk Baeumer CLA
Modified: 2002-10-05 01:59 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 Dirk Baeumer CLA 2002-06-06 04:01:33 EDT
F2

- self hosting workspace on F2 (note org.eclipse.ui needs org.eclipse.ui.win32
  under Windows)
- delete org.eclipse.ui.win32
  observe: you end up having a lot of red Xs on projects
- add org.eclipse.ui.win32
  observe: red Xs still present. The only way I found to get rid of them is
  a full build.
Comment 1 Kent Johnson CLA 2002-06-06 12:41:50 EDT
The .classpath file of org.eclipse.ui.win32 is not recreated the same when it 
is added back.

I started with an empty workspace and added all required projects of 
org.eclipse.ui as binary projects, then added org.eclipse.ui & 
org.eclipse.ui.win32 as source projects. This was the .classpath file of 
org.eclipse.ui.win32:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src-workbenchwin32"/>
    <classpathentry kind="src" path="/org.eclipse.ui"/>
    <classpathentry kind="src" path="/org.apache.xerces"/>
    <classpathentry kind="src" path="/org.eclipse.core.resources"/>
    <classpathentry kind="src" path="/org.eclipse.update.core"/>
    <classpathentry kind="src" path="/org.eclipse.help"/>
    <classpathentry exported="true" kind="src" path="/org.eclipse.swt"/>
    <classpathentry kind="src" path="/org.eclipse.core.boot"/>
    <classpathentry kind="src" path="/org.eclipse.core.runtime"/>
    <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" 
sourcepath="JRE_SRC"/>
    <classpathentry kind="output" path="bin"/>
</classpath>

After deleting org.eclipse.ui.win32 and adding it back, its .classpath file was:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src-workbenchwin32"/>
    <classpathentry kind="src" path="/org.eclipse.ui"/>
    <classpathentry kind="src" path="/org.eclipse.core.boot"/>
    <classpathentry kind="src" path="/org.eclipse.core.runtime"/>
    <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" 
sourcepath="JRE_SRC"/>
    <classpathentry kind="output" path="bin"/>
</classpath>

Moving to PDE...
Comment 2 Kent Johnson CLA 2002-06-06 14:54:29 EDT
I also noticed that the behavior is different depending on the plugin directory 
used.

First launch eclipse in eclipse and add the above mentioned plugins from the 
host workspace directory (ie. default location)

org.eclipse.ui .classpath:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src-workbench"/>
    <classpathentry exported="true" kind="lib"
        path="/org.eclipse.ui.win32/workbenchwin32.jar" rootpath="" 
sourcepath="/org.eclipse.ui.win32/workbenchwin32src.zip"/>
    <classpathentry kind="src" path="/org.apache.xerces"/>
    <classpathentry kind="src" path="/org.eclipse.core.resources"/>
    <classpathentry kind="src" path="/org.eclipse.update.core"/>
    <classpathentry kind="src" path="/org.eclipse.help"/>
    <classpathentry exported="true" kind="src" path="/org.eclipse.swt"/>
    <classpathentry kind="src" path="/org.eclipse.core.boot"/>
    <classpathentry kind="src" path="/org.eclipse.core.runtime"/>
    <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" 
sourcepath="JRE_SRC"/>
    <classpathentry kind="output" path="bin"/>
</classpath>

ui.win32 .classpath:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src-workbenchwin32"/>
    <classpathentry kind="src" path="/org.eclipse.ui"/>
    <classpathentry kind="src" path="/org.apache.xerces"/>
    <classpathentry kind="src" path="/org.eclipse.core.resources"/>
    <classpathentry kind="src" path="/org.eclipse.update.core"/>
    <classpathentry kind="src" path="/org.eclipse.help"/>
    <classpathentry exported="true" kind="src" path="/org.eclipse.swt"/>
    <classpathentry kind="src" path="/org.eclipse.core.boot"/>
    <classpathentry kind="src" path="/org.eclipse.core.runtime"/>
    <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" 
sourcepath="JRE_SRC"/>
    <classpathentry kind="output" path="bin"/>
</classpath>

Delete ui.win32, you get errors on ui. Add ui.win32 back and it changes to:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src-workbenchwin32"/>
    <classpathentry kind="src" path="/org.eclipse.ui"/>
    <classpathentry kind="src" path="/org.eclipse.core.boot"/>
    <classpathentry kind="src" path="/org.eclipse.core.runtime"/>
    <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" 
sourcepath="JRE_SRC"/>
    <classpathentry kind="output" path="bin"/>
</classpath>


================================================================================

Now Launch eclipse in eclipse and add plugins from the original eclipse/plugins 
directory

org.eclipse.ui .classpath:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src-workbench"/>
    <classpathentry kind="src" path="/org.apache.xerces"/>
    <classpathentry kind="src" path="/org.eclipse.core.resources"/>
    <classpathentry kind="src" path="/org.eclipse.update.core"/>
    <classpathentry kind="src" path="/org.eclipse.help"/>
    <classpathentry exported="true" kind="src" path="/org.eclipse.swt"/>
    <classpathentry kind="src" path="/org.eclipse.core.boot"/>
    <classpathentry kind="src" path="/org.eclipse.core.runtime"/>
    <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" 
sourcepath="JRE_SRC"/>
    <classpathentry kind="output" path="bin"/>
</classpath>

ui.win32 .classpath:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src-workbenchwin32"/>
    <classpathentry kind="src" path="/org.eclipse.ui"/>
    <classpathentry kind="src" path="/org.apache.xerces"/>
    <classpathentry kind="src" path="/org.eclipse.core.resources"/>
    <classpathentry kind="src" path="/org.eclipse.update.core"/>
    <classpathentry kind="src" path="/org.eclipse.help"/>
    <classpathentry exported="true" kind="src" path="/org.eclipse.swt"/>
    <classpathentry kind="src" path="/org.eclipse.core.boot"/>
    <classpathentry kind="src" path="/org.eclipse.core.runtime"/>
    <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" 
sourcepath="JRE_SRC"/>
    <classpathentry kind="output" path="bin"/>
</classpath>


Delete ui.win32, you get NO errors on ui even after a full build. Add ui.win32 
back and it has 2 errors which never go away:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src-workbenchwin32"/>
    <classpathentry kind="src" path="/org.eclipse.ui"/>
    <classpathentry kind="src" path="/org.eclipse.core.boot"/>
    <classpathentry kind="src" path="/org.eclipse.core.runtime"/>
    <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" 
sourcepath="JRE_SRC"/>
    <classpathentry kind="output" path="bin"/>
</classpath>
Comment 3 Dejan Glozic CLA 2002-06-08 13:43:25 EDT
Another similar bug related to fragment classpath computation.

If you start running out of time, move it back to me.
Comment 4 Dejan Glozic CLA 2002-06-10 23:25:32 EDT
This may be permanent limitation in 2.0. Import wizard is designed to import 
plug-ins and fragments in a batch. In particular, it is designed to result plug-
ins referenced by fragments in the list of selected plug-in. When fragments are 
imported alone, they are not capable of setting the classpath correctly even if 
the referenced plug-in already exists in the workspace. 

The workaround for this problem is to delete/add plug-ins and fragments 
together. For example, remove org.eclipse.ui and org.eclipse.ui.win32 in lock-
step. Alternatively, repair the classpath by calling 'Update Classpath' from 
the pop-up menu.
Comment 5 Dejan Glozic CLA 2002-06-10 23:25:53 EDT
Moved to fixed by accident - reopening.
Comment 6 Wassim Melhem CLA 2002-07-21 00:08:55 EDT
*** Bug 17268 has been marked as a duplicate of this bug. ***
Comment 7 Wassim Melhem CLA 2002-10-05 01:59:31 EDT
Fixed.