[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Newsgroup Home]
[news.eclipse.newcomer] Re: Launch Configuration Hell

Eric Rizzo wrote:
I (and others) can assure you that Eclipse does NOT use the windows registry at all, under no circumstances. As for other locations, it will only store data in the workspace and the project directories that you tell it about. It does not even write into its own installation directory other than when you install new features or plugins via the update manager.
That is why I have been so adamant that the data must still exist within either your workspace or project directory - there is simply no other place that Eclipse knows how to write to. Try grabbing a new copy of the project from your SCM into a completely new location on disk and create a new Eclipse Project there and see if that makes any difference. If it still persists, then whatever the problem is must be checked in your SCM (in which case others would see it, too, I guess).
Crap, I can't remember - have you looked at the .metadata/.log file right when this happens to see if there are any more details logged?

Eric

OK - problem solved. When I create my projects I link in the source from my SCM area. *** I did not realize Eclipse actually puts a .project file (and other files and directories) in the source directory. *** When I looked at this directory I found


<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>KPS CSP Plugins main</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.ui.externaltools.ExternalToolBuilder</name>
<triggers>auto,full,incremental,</triggers>
<arguments>
<dictionary>
<key>LaunchConfigHandle</key>
<value>&lt;project&gt;/.externalToolBuilders/KPS CSP Plugins main.launch</value>
</dictionary>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>


So I removed the <buildSpec> that includes "KPS CSP Plugins main" and restarted Eclipse. When I went back to try to define a builder with the name "KPS CSP Plugins main" I got the same error.

Then I looked in the .externalToolBuilders directory in my source directory and found "KPS CSP Plugins main.launch" and renamed it. I restarted Eclipse and was finally able to create a new builder with the name "KPS CSP Plugins main"

Ta Da!

Lessons Learned

1) Eclipse stores project related files in your source directory even though you have "linked" them in. I personally find this behavior counter intuative and would prefer that Eclipse store all project related files in the workspace and leave my source directory to "just source". We (others here too) like to be able to torch our workspaces and start over without having to torch the source and synch it back again from Perforce. I know this is not going to happen as Eclipse's behavior is now set in stone.

2) Eclipse's behavior is misleading. It complained about the "KPS CSP Plugins main" builder as being previously defined, but does not show it in the list of builders. At a minimum it should have showed it in the list of defined builders and allowed me to edit it. This should be fixed.

3) Eclipse's error message is misleading, it complains about a "launcher" when what you are working on is a "builder". This should be fixed.

4) Eric Rizzo is extremely persitent and I'm lucky he stuck with this for so long. No fixing needed ;-)

Cheers, Eric