Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 364541 - two same eglnature entry in .project file
Summary: two same eglnature entry in .project file
Status: CLOSED FIXED
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: EDT (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Justin Spadea CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-11-23 03:29 EST by Tony Chen CLA
Modified: 2017-02-23 14:17 EST (History)
5 users (show)

See Also:


Attachments
Patch removing the duplicate nature (24.79 KB, patch)
2012-01-11 11:08 EST, Justin Spadea CLA
lasher: iplog+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Tony Chen CLA 2011-11-23 03:29:15 EST
the .project file of any EDT project contains two entries for eglnature with different case. 

	<natures>
		<nature>org.eclipse.jdt.core.javanature</nature>
		<nature>org.eclipse.edt.ide.core.EGLNature</nature>
		<nature>org.eclipse.edt.ide.core.eglnature</nature>
	</natures>
Comment 1 Brian Svihovec CLA 2011-11-23 07:29:55 EST
Setting to future.
Comment 2 Song Fan CLA 2012-01-10 20:55:58 EST
Hi Justin,

I found this issue is caused by that 2 NatureID(EGLCore.NATURE_ID and EGLNature.EGL_NATURE_ID) are added into the .project file, but the value of them are same as each other in EDT source code.

I'm not sure if it is necessary to remove one of them for EDT. And I'm wondering if you didn't delete it for some extensibility issue when porting RBD code to EDT. 

In RBD, they are different:
EGLNature.EGL_NATURE_ID : com.ibm.etools.egl.core.EGLNature
EGLCore.NATURE_ID : com.ibm.etools.egl.model.eglnature

Would you please help me check it?
Thanks very much!
Comment 3 Justin Spadea CLA 2012-01-11 11:08:05 EST
There is no need to have two natures in EDT (one of these in RBD was a 'legacy' nature). I've removed "org.eclipse.edt.ide.core.EGLNature". I checked out every project from CVS and did a file search for anything referencing this ID and changed it to the other one (plugin.xml files must have this hard coded and cannot point to the Java constant). I kept both constants around, but now EGLCore.NATURE_ID just points to EGLNature.EGL_NATURE_ID.

I also removed the old nature from .project files in CVS (e.g. the widgets).

Existing projects in your workspace won't be affected by this change, when a nature doesn't exist it doesn't cause any errors (case in point: edt.compiler's .project file has had the old "com.ibm." nature IDs this entire time).

I've verified that existing projects still work, new projects are created with just the one nature, and converting a project to an EGL project also adds just the one nature.
Comment 4 Justin Spadea CLA 2012-01-11 11:08:36 EST
Created attachment 209319 [details]
Patch removing the duplicate nature
Comment 5 Justin Spadea CLA 2012-01-11 11:34:58 EST
Small correction: it was edt.mof.egl that had the "com.ibm" natures, not edt.compiler.
Comment 6 Tony Chen CLA 2012-01-16 04:53:57 EST
Verified in Version: 0.8.0.v201201152102-1CT-Fiv5_M5_LOR6Ka4.