Project build seems to fail if its path is a symbolic link
This error is reported:
/Users/lk/projects/other/nwl/build.generated.xml:37: java.lang.IllegalArgumentException: File not in workspace: /Users/lk/projects/other/nwl/editor/nwl.main.esvSource descriptor not found
java.io.FileNotFoundException: include/nwl.packed.esv
at org.strategoxt.imp.metatooling.loading.DynamicDescriptorLoader.getSourceDescriptor(DynamicDescriptorLoader.java:230)
at org.strategoxt.imp.metatooling.loading.DynamicDescriptorLoader.updateResource(DynamicDescriptorLoader.java:166)
at org.strategoxt.imp.metatooling.loading.DynamicDescriptorLoader.postResourceChanged(DynamicDescriptorLoader.java:144)
at org.strategoxt.imp.metatooling.loading.DynamicDescriptorLoader.postResourceChanged(DynamicDescriptorLoader.java:148)
at org.strategoxt.imp.metatooling.loading.DynamicDescriptorLoader.postResourceChanged(DynamicDescriptorLoader.java:148)
at org.strategoxt.imp.metatooling.loading.DynamicDescriptorLoader.postResourceChanged(DynamicDescriptorLoader.java:148)
at org.strategoxt.imp.metatooling.loading.DynamicDescriptorLoader$1.runInWorkspace(DynamicDescriptorLoader.java:127)
at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)The following didn’t help to fix this:
Index: org.strategoxt.imp.metatooling/src/org/strategoxt/imp/metatooling/building/AntDescriptorBuilder.java— org.strategoxt.imp.metatooling/src/org/strategoxt/imp/metatooling/building/AntDescriptorBuilder.java (revision 21008)
+++ org.strategoxt.imp.metatooling/src/org/strategoxt/imp/metatooling/building/AntDescriptorBuilder.java (working copy)
@@ -3,6 +3,7 @@
import static org.strategoxt.imp.metatooling.loading.DynamicDescriptorLoader.*;import java.io.File;
+import java.io.IOException;
import java.net.URI;import org.eclipse.core.resources.IResource;
@@ -48,7 +49,13 @@
}private static IResource getResource(String file) {
Submitted by Lennart Kats on 15 June 2010 at 14:01
- URI uri = new File(file).toURI();
- File fileRef = new File(file);
- try {
- fileRef = fileRef.getCanonicalFile();
- } catch (IOException e) {
- Environment.logException(e);
- }
- URI uri = fileRef.toURI();
IWorkspace workspace = ResourcesPlugin.getWorkspace();
IResource[] resources = workspace.getRoot().findFilesForLocationURI(uri);
if (resources.length == 0)