| Summary: | NPE Launching when workspace contains a project deleted from disk | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | [Eclipse Project] PDE | Reporter: | Andrew Niefer <aniefer> | ||||||
| Component: | UI | Assignee: | Andrew Niefer <aniefer> | ||||||
| Status: | RESOLVED FIXED | QA Contact: | |||||||
| Severity: | major | ||||||||
| Priority: | P3 | CC: | curtis.windatt.public, Michael_Rennie | ||||||
| Version: | 3.7 | Flags: | curtis.windatt.public:
review+
Michael_Rennie: review+ |
||||||
| Target Milestone: | 3.7 RC1 | ||||||||
| Hardware: | PC | ||||||||
| OS: | Linux | ||||||||
| Whiteboard: | |||||||||
| Attachments: |
|
||||||||
|
Description
Andrew Niefer
Created attachment 194818 [details]
Patch
Curtis, plz review for RC1
+1 for RC1. Patch applied to HEAD. This change breaks dev.properties generation. Projects contributing ant tasks incorrectly get their bin_ant class files on the dev time classpath leading to ClassDefNotFound errors using ant tasks at runtime which are extremely hard to debug.
In my case,
> file.getFullPath().toFile().exists();
file = "L/org.eclipse.equinox.p2.director.app/build.properties"
file.getFullPath() = "/org.eclipse.equinox.p2.director.app/build.properties"
This path is relative to the workspace root, but calling toFile on it yields a file with absolute path that does not exist on disk.
The result is that searchBuild is false, and all the output folders are placed on the dev path, which is incorrect for contributed ant tasks.
Created attachment 195416 [details]
patch
Andrew's fix looks correct to me. Mike, can you please see if the updated fix solves your ant issues? +1 for the updated patch. Debugging through launching with API Tools demonstrates the problem with the previous patch. whole-hearted +1, it resolves my Ant and API Tools test failures locally. Fixed in HEAD. |