我想在Maven项目中包含一个文本文件。代码本身会编译,但是每次尝试运行它时,无论是在VS Code中还是在命令行中,我都会得到:java.io.FileNotFoundException: The provided file path /lightdm-forum.txt does not exist.该文件位于src / main / resources /,这是默认设置。
代码段:
public static void main(String[] args) throws Exception {
StreamExecutionEnvironment env = StreamExecutionEnvironment.createLocalEnvironment();
DataStream<Tuple2<String, Integer>> dataStream = env
.readTextFile("/lightdm-forum.txt")
.flatMap(new Splitter())
.keyBy(0)
.sum(1);
dataStream.print();
env.execute("Socket Stream WordCount");
}
Maven似乎可以识别该文件并将其复制到类路径的根目录:
[INFO] --- maven-resources-plugin:3.0.2:resources (default-resources) @ WordCount_Stream ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 1 resource
编译后,目标文件夹中的结构如下所示:
.
├── classes
│ ├── com
│ │ └── lmu
│ │ └── WordCount_Stream
│ │ ├── WordCounter$Splitter.class
│ │ └── WordCounter.class
│ └── lightdm-forum.txt
因此,该文件已被复制,但是在我尝试运行该项目时找不到。有任何想法吗?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。