如何在Paths.get中解析类路径文件

时间:2016-03-15 13:54:14

标签: java java-8 classpath

spring boot项目作为非web项目,项目结构如下,

├── src
│   ├── main
│   │   ├── java
│   │   │   └── com
│   │   │       └── hlj
│   │   │           ├── MailConfig.java
│   │   │           └── SendEmailShellApplication.java
│   │   └── resources
│   │       ├── application.properties
│   │       └── usage.txt

SendEmailShellApplication我要打印usage.txt的内容, 我试过下面的代码,但都失败了。

第一

Files.readAllLines(Paths.get("/usage.txt")).forEach(System.out::println);

抛出异常:

Caused by: java.nio.file.NoSuchFileException: /usage.txt

尝试了另一个:

Files.readAllLines(Paths.get(this.getClass().getResource("/usage.txt").getFile())).forEach(System.out::println);

抛出异常:

Caused by: java.nio.file.NoSuchFileException: file:/home/foo/workspace/bar/spring-boot-send-email-shell/target/send-email-shell-0.0.1-SNAPSHOT.jar!/usage.txt

然后尝试:

Files.readAllLines(Paths.get(new ClassPathResource("usage.txt").getURI())).forEach(System.out::println);

抛出异常:

Caused by: java.nio.file.FileSystemNotFoundException

那么如何正确查找usage.txt中的Paths.get()文件?

0 个答案:

没有答案