Bug 34286 - Unbound classpath variable restarting workbench
Summary: Unbound classpath variable restarting workbench
Status: RESOLVED DUPLICATE of bug 35155
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 2.1   Edit
Hardware: PC Windows 2000
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Jerome Lanneluc CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-03-10 07:39 EST by Jerome Lanneluc CLA
Modified: 2003-03-18 13:49 EST (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 Jerome Lanneluc CLA 2003-03-10 07:39:49 EST
Build 20030307 (aka RC2)

1. Download RC2 and unzip at D:/
2. Download the latest GEF and unzip at D:/GEF/eclipse
3. In the RC2 install tree, create a 'links' directory (D:/eclipse/links) and 
under it create a file called 'org.eclipse.gef.link'
Contents of the file should be:
path=D:/GEF
4. Launch RC2 on a fresh workspace.
5. Switch to Java perspective.
7. Import org.eclipse.gef and org.eclipse.ui.workbench with source.
8. Fix the org.eclipse.gef buildpath manually by explicitly making the 
folder 'src-gef' a source folder.  This is a PDE bug that we will address for 
RC3.
9. Observe the classpath of the org.eclipse.gef project.  One entry's path 
contains the variable ECLIPSE_HOME_ORG_ECLIPSE_GEF_LINK, and all the other ones 
contain ECLIPSE_HOME.
10. Close the workbench.
11. Restart the workbench and you will see the error "Unbound classpath 
variable: 'ECLIPSE_HOME_ORG_ECLIPSE_GEF_LINK/org.eclipse.draw2d_2.1.0/runtime/dr
aw2d.jar' in the Tasks view.
Comment 1 Jerome Lanneluc CLA 2003-03-10 07:44:04 EST
'ECLIPSE_HOME_ORG_ECLIPSE_GEF_LINK' not having an initializer is causing grief. 
The first time we try to resolve the classpath, no value is found for this 
variable, so we create a marker. This marker is never removed after the value 
for this variable has been set.
Comment 2 Jerome Lanneluc CLA 2003-03-10 08:00:09 EST
Forcing the validation in JavaCore.updateVariableValues(...) fixes the problem. 
I'm not sure what the consequences are on performance.

Index: JavaCore.java
===================================================================
RCS 
file: /data/cvs/eclipse/org.eclipse.jdt.core/model/org/eclipse/jdt/core/JavaCore
.java,v
retrieving revision 1.241
diff -u -r1.241 JavaCore.java
--- JavaCore.java	5 Mar 2003 17:46:13 -0000	1.241
+++ JavaCore.java	10 Mar 2003 12:52:54 -0000
@@ -3177,7 +3177,7 @@
 									
	null, // don't call beginTask on the monitor (see 
http://bugs.eclipse.org/bugs/show_bug.cgi?id=3717)
 									
	!ResourcesPlugin.getWorkspace().isTreeLocked(), // can change resources
 									
	(IClasspathEntry[]) affectedProjects.get(project),
-									
	false, // updating - no validation
+									
	true, // updating - validate in case a marker was previously created 
for this variable
 									
	false); // updating - no need to save
 							}
 						}
Comment 3 Philipe Mulet CLA 2003-03-18 13:49:55 EST
It is actually the same as bug 35155, and fix there is more general.

*** This bug has been marked as a duplicate of 35155 ***