Я могу ошибаться (я не использую эту библиотеку и не знают историю своих имен пакетов), но это выглядит как autoEvoSuite
это ваш собственный пакет.
Если это так
то есть
имя класса конфликт
(на самом деле нет никакого конфликта, вы просто используете неверный класс), так как ваш класс также называют CSVReader
так внутри метода readCVS
вы не вызывая конструктор au.com.bytecode.opencsv.CSVReader
, но конструктор своего класса autoEvoSuite.CSVReader
, и так как ваш класс не имеет
public CSVReader(FileReade reader){...}
конструктора, компилятор сообщает вам об этой проблеме.
Чтобы решить эту проблему, рассмотреть вопрос о переименовании класса, или быть явными и сказать, какой класс именно вы хотите использовать, написав его полное имя-пакета, как
au.com.bytecode.opencsv.CSVReader reader = new au.com.bytecode.opencsv.CSVReader(new FileReader(csvPath));
Какую версию lib вы импортировали? Вы уверены, что конструктор присутствует в этой версии? –
Привет @tobias_k да, вы правы, по-видимому, последнее обновление имеет конструктор, берущий «Reader», но java говорит мне, что инициировать такой тип невозможно. – MrD
Это потому, что 'Читатель' является абстрактным классом. Однако 'FileReader' _is_ a' Reader', поэтому это не должно быть проблемой. Может быть, есть еще один класс с тем же именем на вашем пути к классу? –