Por que meu URI não é hierárquico? [duplicado]
Esta pergunta já tem uma resposta aqui:
Arquivo Java Jar: use erros de recurso: o URI não é hierárquico 6 respostasEu tenho arquivos na pasta de recursos. Por exemplo, se eu precisar obter o arquivo da pasta de recursos, faça o seguinte:
File myFile= new File(MyClass.class.getResource(/myFile.jpg).toURI());
System.out.println(MyClass.class.getResource(/myFile.jpg).getPath());
Eu tenhotestado e tudotrabalho!
O caminho é
/D:/java/projects/.../classes/X/Y/Z/myFile.jpg
Mas, Se eu criar um arquivo jar, usando,Maven:
mvn package
... e inicie meu aplicativo:
java -jar MyJar.jar
Eu tenho o seguinte erro:
Exception in thread "Thread-4" java.lang.RuntimeException: ხელმოწერის განხორციელება შეუძლებელია
Caused by: java.lang.IllegalArgumentException: URI is not hierarchical
at java.io.File.<init>(File.java:363)
...e o caminho do arquivo é:
file:/D:/java/projects/.../target/MyJar.jar!/X/Y/Z/myFile.jpg
Essa exceção acontece quando tento obter o arquivo da pasta de recursos. Nesta linha. Por quê? Por que ter esse problema no arquivo JAR? O que você acha?
Existe outra maneira de obter o caminho da pasta de recursos?