Search code examples
pathxtextabsolute-pathxtend

Absolute path on Xtext project


I wanted to know how I can get the absolute path of a file which is inside my project not in the application running.

For example this one:

C:\Users\Mr\Documents\Example\org.xtext.example.mydsl\src\example.txt

I have tried with paths like:

val file = new File("relative path");
val absolutePathString = file.getAbsolutePath();

or

System.getProperty("user.dir");

But all of them retrieves me Eclipse's path and not my project's path.

Thanks for the help!


Solution

  • There does not need to be a file. Assuming you have a default eclipse with default filesystem and talk about a file in a project you may have a look a at these

    public void doit(Resource r) {
        URI uri = r.getURI();
        if (uri.isPlatformResource()) {
            IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(uri.toPlatformString(true)));
            file.getLocation();
            file.getLocationURI();
            file.getRawLocation();
            file.getRawLocationURI();
    
        }
    }