Eclipse Maven Project указывает на ошибку File.not.Found - PullRequest
0 голосов
/ 13 апреля 2020

Привет, ребята. У меня есть файл внутри src / main / resources / CustomersDetails.txt, но я получаю java .io.FileNotFoundException. Но URL-адрес не нулевой, и мое условие if истинно, но мое затмение выдает мне следующую ошибку: почему он смотрит на цель, и в моей целевой папке у меня есть только банка, и мой файл также присутствует в целевой папке. Есть идеи?

java.io.FileNotFoundException: C:\Users\Balachander%20K\eclipse-workspace\JavaLearning\target\classes\CustomersDetails.txt (The system cannot find the path specified)
    at java.io.FileInputStream.open0(Native Method)
    at java.io.FileInputStream.open(FileInputStream.java:195)
    at java.io.FileInputStream.<init>(FileInputStream.java:138)
    at java.io.FileReader.<init>(FileReader.java:72)
    at com.syncfusion.Persons.main(Persons.java:22)

Моя программа:

package com.syncfusion;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;

import org.apache.commons.io.FileUtils;

public class Persons {


    public static void main(String[] args) {

        Persons person = new Persons();
        try {

            File file = person.getFileNameFromResources("CustomersDetails.txt");
            FileReader fileReader = new FileReader(file);
            BufferedReader bufferedReader = new BufferedReader(fileReader);
            String line=bufferedReader.readLine();
            while(line!=null) {
                System.out.println(line);
                line=bufferedReader.readLine();
            }
        } catch (IOException e) {

            e.printStackTrace();
        }

    }

    private File getFileNameFromResources(String fileName) {

        ClassLoader loader = getClass().getClassLoader();
        URL url = loader.getResource(fileName);
        if(url!=null) {
            System.out.println("File Found");
            return new File(url.getFile());
        }
        System.out.println("File Not Found");
        return null;
    }
}

1 Ответ

0 голосов
/ 13 апреля 2020

Я пытался продублировать вашу программу с Maven и запустить ее с Eclipse, я заставил ее работать!

Правильно ли вы импортировали свой проект Maven? Когда я импортирую проект Maven в Eclipse, он сгенерирует целевую папку и поместит ее в правильный путь (target \ classes \ CustomerDetails.txt).

Мое второе предположение, что вы, вероятно, добавили текстовый файл после импорта проекта в Eclipse? Таким образом, он может не скомпилироваться правильно?

Вы можете удалить проект в Eclipse (не удаляйте содержимое на диске) и удалить папку «target», а затем импортировать ее снова.

Или вы можете скомпилировать свой mvn из терминала,

mvn compile
mvn package

go обратно к затмению (щелкните правой кнопкой мыши -> refre sh вашего проекта).

...