Java - NoClassDefFoundError

В общем, по сути. Программа принимает путь к файлу, формата CSV, и выводит всё построчно. Запуск через консоль, не используя Maven, для удобства скачал стороннюю библиотеку, для работы с CSV, при компиляции её вроде добавил. Компилируется нормально, но при запуске выводит ошибка или java.lang.NoClassDefFoundError, или ClassNotFoundException. Проблема вроде такая себе, но блин... голову уже несколько часов ломаю. Перечитал и перепробовал всё, если не больше, всё равно не хочет запускаться.

Компиляция:

E:\projects\java.Adam2.0\src\com\company>javac -cp "E:\projects\Librari\opencsv-5.2.jar" QI100.java

Запуск:

(1)

E:\projects\java.Adam2.0\src>java -cp "E:\projects\Librari\opencsv-5.2.jar" com.company.QI100 C:\Users\ARTHUR\Downloads\file.csv

Error: Could not find or load main class com.company.QI100
Caused by: java.lang.ClassNotFoundException: com.company.QI100

(2)

E:\projects\java.Adam2.0\src>java com.company.QI100
Error: Unable to initialize main class com.company.QI100
Caused by: java.lang.NoClassDefFoundError: com/opencsv/exceptions/CsvValidationException
  • пробовал ещё разные варианты с точкой, без и т.д., всё равно ни как не могу запустить.

Сам код:

package com.company;

import com.opencsv.CSVReader;
import com.opencsv.exceptions.CsvValidationException;

import java.io.*;
import java.util.ArrayList;
import java.util.List;


public class QI100 {
    public static void main (String[] args) throws IOException, FileNotFoundException, CsvValidationException {
        String pathToFile = args[0];
        BufferedReader reader = new BufferedReader(new FileReader(pathToFile));
        CSVReader csvReader = new CSVReader(reader);
        ArrayList<String[]> lineArray = new ArrayList<>();
        String[] line;
        while ((line = csvReader.readNext()) != null) {
            lineArray.add(line);
            System.out.println(line);
        }
    }
}

И да, я уже второй раз задаю этот вопрос... не серчайте, просто реально ни как не могу разобраться.


Ответы (1 шт):

Автор решения: Сабир Исламов

Если всё-таки интересен вариант с мавен

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>groupId</groupId>
    <artifactId>csvtest</artifactId>
    <version>1.0-SNAPSHOT</version>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>7</source>
                    <target>7</target>
                </configuration>
            </plugin>
        </plugins>
    </build>
    <dependencies>
    <dependency>
        <groupId>com.opencsv</groupId>
        <artifactId>opencsv</artifactId>
        <version>5.2</version>
    </dependency>
</dependencies>
    
</project>
→ Ссылка