Hive操作后,log报错:Nested exception: java.io.FileNotFoundException

问题遇到的现象和发生背景

用java编写hive的拼接操作时,拼接失败了,查看log报错:Nested exception: java.io.FileNotFoundException: hdfs:/master:9000/export/landMark.xml (没有那个文件或目录)

img


img


可是我的xml文件就在这个目录下面,并且权限也都打开了。

img

问题相关代码,请勿粘贴截图

这里是我java编写的代码,路径写得是new File("/export/landMark.xml"),按道理也没有毛病??

package cn.itcast.telecom.landmark;

import cn.itcast.telecom.entity.LandMark;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import java.io.File;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

/**
 * @author John
 * @Date 2022/1/13 10:25
 */
public class LandMarkUtil {
    public LandMarkUtil() {
    }

    public static List<LandMark> parseLandMark() throws DocumentException {
        SAXReader reader = new SAXReader();
        Document document = null;
        document = reader.read(new File("/export/landMark.xml"));//此处需将landMark.xml配置文件上传至jar所在节点的/ export目录下
        Element root = document.getRootElement();
        List list = root.elements("resourceitem");
        List<LandMark> landMarkBeans = new ArrayList();
        Iterator i = list.iterator();

        while(i.hasNext()) {
            Element landMark = (Element)i.next();
            LandMark bean = new LandMark();
            bean.setLowerLeftLon(Double.valueOf(landMark.element("lowerLeftLon").getText()));
            bean.setLowerLeftLat(Double.valueOf(landMark.element("lowerLeftLat").getText()));
            bean.setTopRightLon(Double.valueOf(landMark.element("topRightLon").getText()));
            bean.setTopRightLat(Double.valueOf(landMark.element("topRightLat").getText()));
            bean.setCategory(landMark.element("category").getText());
            bean.setLandMarkName(landMark.element("landMarkName").getText());
            landMarkBeans.add(bean);
        }

        return landMarkBeans;
    }

    public static void main(String[] args) {
        LandMarkUtil var1 = new LandMarkUtil();

        try {
            parseLandMark();
        } catch (DocumentException var3) {
            var3.printStackTrace();
        }

    }
}


希望指导指导!!

你的程序不是在root用户下运行的吧

报错的是hdfs路径吧,不是本地路径吧