我试图在flink集群中运行JAR,但是得到了这个FileNotFound异常。
Caused by: java.io.FileNotFoundException: File file:/tmp/flink-web-88bf3f41-94fc-40bd-a865-bb0e6d5ac95c/flink-web-upload/82227475-523d-4607-8ab2-09bae8602248-tutorial-1.0-jar-with-dependencies.jar!/ldbc_sample/edges.csv does not exist or the user running Flink ('userA') has insufficient permissions to access it.
at org.apache.flink.core.fs.local.LocalFileSystem.getFileStatus(LocalFileSystem.java:106)csv文件位于项目资源目录下的文件夹中。
我通过以下方式访问文件路径:
URL resource = Helper.class.getClassLoader().getResource("ldbc_sample");
return resource.getPath();我打开了jar,并确保这些文件确实存在,而且我还在本地运行它,它可以工作。要确保flink可以访问我的csv,我必须做些什么?
发布于 2021-11-08 08:52:31
也许你想把你的.csv作为参数传递给你的程序?类似于:
def main(args: Array[String]): Unit = {
val ldbcSample = ParameterTool.fromArgs(args).getRequired("ldbc_sample")
...
}或者,您可以使用不同的参数创建.properties文件:
ldbc_sample: /ldbc_sample/edges.csv
topic_source: TOPIC_NAMEval jobParams = ParameterTool.fromArgs(args)
val jobArgs = ParameterTool.fromPropertiesFile(jobParams.getRequired("properties_file_path"))https://stackoverflow.com/questions/69873085
复制相似问题