Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 166228 Details for
Bug 302295
After associating source folder with rt.jar project refresh takes exceedingly long time.
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
[patch]
Naive patch for JDT/Debug
jdt.launching_v00.txt (text/plain), 4.20 KB, created by
Frederic Fusier
on 2010-04-27 13:47:07 EDT
(
hide
)
Description:
Naive patch for JDT/Debug
Filename:
MIME Type:
Creator:
Frederic Fusier
Created:
2010-04-27 13:47:07 EDT
Size:
4.20 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.jdt.launching >Index: launching/org/eclipse/jdt/internal/launching/JREContainerInitializer.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.jdt.launching/launching/org/eclipse/jdt/internal/launching/JREContainerInitializer.java,v >retrieving revision 1.43 >diff -u -r1.43 JREContainerInitializer.java >--- launching/org/eclipse/jdt/internal/launching/JREContainerInitializer.java 27 Apr 2007 18:25:18 -0000 1.43 >+++ launching/org/eclipse/jdt/internal/launching/JREContainerInitializer.java 27 Apr 2010 17:29:00 -0000 >@@ -78,6 +78,37 @@ > } > } > } >+ public void initialize(IPath containerPath, IJavaProject[] projects) throws CoreException { >+ int size = containerPath.segmentCount(); >+ if (size > 0) { >+ if (containerPath.segment(0).equals(JavaRuntime.JRE_CONTAINER)) { >+ int length = projects.length; >+ IVMInstall vm = resolveVM(containerPath); >+ IClasspathContainer[] containers = new JREContainer[length]; >+ if (vm != null) { >+ if (JREContainer.DEBUG_JRE_CONTAINER) { >+ System.out.println("\tResolved VM: " + vm.getName()); //$NON-NLS-1$ >+ } >+ for (int i=0; i<length; i++) { >+ containers[i] = new JREContainer(vm, containerPath, projects[i]); >+ } >+ } else { >+ if (JREContainer.DEBUG_JRE_CONTAINER) { >+ System.out.println("\t*** FAILED RESOLVE VM ***"); //$NON-NLS-1$ >+ } >+ } >+ JavaCore.setClasspathContainer(containerPath, projects, containers, null); >+ } else { >+ if (JREContainer.DEBUG_JRE_CONTAINER) { >+ System.out.println("\t*** INVALID JRE CONTAINER PATH ***"); //$NON-NLS-1$ >+ } >+ } >+ } else { >+ if (JREContainer.DEBUG_JRE_CONTAINER) { >+ System.out.println("\t*** NO SEGMENTS IN CONTAINER PATH ***"); //$NON-NLS-1$ >+ } >+ } >+ } > > /** > * Returns the VM install associated with the container path, or <code>null</code> >Index: launching/org/eclipse/jdt/internal/launching/LaunchingPlugin.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.jdt.launching/launching/org/eclipse/jdt/internal/launching/LaunchingPlugin.java,v >retrieving revision 1.89 >diff -u -r1.89 LaunchingPlugin.java >--- launching/org/eclipse/jdt/internal/launching/LaunchingPlugin.java 4 May 2009 14:28:32 -0000 1.89 >+++ launching/org/eclipse/jdt/internal/launching/LaunchingPlugin.java 27 Apr 2010 17:29:01 -0000 >@@ -272,7 +272,9 @@ > monitor.worked(1); > > // re-bind all container entries >- for (int i = 0; i < projects.length; i++) { >+ int length = projects.length; >+ Map projectsMap = new HashMap(); >+ for (int i = 0; i < length; i++) { > IJavaProject project = projects[i]; > IClasspathEntry[] entries = project.getRawClasspath(); > boolean replace = false; >@@ -292,10 +294,15 @@ > newBinding = renamed; > } > } >- JREContainerInitializer initializer = new JREContainerInitializer(); >+// JREContainerInitializer initializer = new JREContainerInitializer(); > if (newBinding == null){ > // re-bind old path >- initializer.initialize(reference, project); >+// initializer.initialize(reference, project); >+ List projectsList = (List) projectsMap.get(reference); >+ if (projectsList == null) { >+ projectsMap.put(reference, projectsList = new ArrayList(length)); >+ } >+ projectsList.add(project); > } else { > // replace old class path entry with a new one > IClasspathEntry newEntry = JavaCore.newContainerEntry(newBinding, entry.isExported()); >@@ -313,7 +320,16 @@ > } > monitor.worked(1); > } >- >+ Iterator references = projectsMap.keySet().iterator(); >+ while (references.hasNext()) { >+ IPath reference = (IPath) references.next(); >+ List projectsList = (List) projectsMap.get(reference); >+ IJavaProject[] referenceProjects = new IJavaProject[projectsList.size()]; >+ projectsList.toArray(referenceProjects); >+ // re-bind old path >+ JREContainerInitializer initializer = new JREContainerInitializer(); >+ initializer.initialize(reference, projects); >+ } > } > > }
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 302295
:
158605
|
158607
|
164992
|
166028
| 166228 |
166307