Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Missing scheme (IllegalArgumentException) while using java.nio.file.Paths interface

this is a really simple java question. I am using Java 8 with eclipse kepler on a linux system. I've been trying to try out NIO.2. My code is:

package lucasTest;
import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
import java.nio.file.*;

public class Lucas {
    public static void main(String[] args) throws URISyntaxException{
        URI u = new URI("./Lucas.java");
        Path p = Paths.get(u);  
    }
}

I get the following error:

Exception in thread "main" java.lang.IllegalArgumentException: Missing scheme
    at java.nio.file.Paths.get(Paths.java:134)
    at lucasTest.Lucas.main(Lucas.java:10)

Please help!

Thanks, Lucas

like image 671
Lucas Earl Avatar asked Aug 06 '14 18:08

Lucas Earl


1 Answers

Your uri declaration is missing the scheme for files (file:///):

u = new URI("file:///./Lucas.java");
Path p = Paths.get(u);          

should work. As an alternative you can try

 Path p2 = Paths.get(".", "Lucas.java");
like image 111
Ralf Wagner Avatar answered Nov 15 '22 16:11

Ralf Wagner