saya mendapatkan ClassNotFoundException ketika saya mencoba membaca dari file excel

Ketika saya mencoba membaca dari file Excel menggunakan apace poi saya mendapatkan ClassNotFoundException diikuti oleh kesalahan lain dan saya telah mengimpor semua file jar yang diperlukan di perpustakaan referensi

omong-omong saya masih baru dalam coding

ini kodenya:

import java.io.*;
import java.io.File;
import java.io.FilterInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import org.apache.*;
import org.apache.poi.*;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.FormulaEvaluator;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

public class Test {

public static void main(String[] args) throws IOException  {
    // TODO Auto-generated method stub


FileInputStream F = new FileInputStream("Carbcounting.xlsx");

    XSSFWorkbook wb = new XSSFWorkbook(F);

    XSSFSheet sheet = wb.getSheetAt(0);

    FormulaEvaluator formulaEva = wb.getCreationHelper().createFormulaEvaluator();

    for(Row row : sheet){
        for(Cell cell : row){

            System.out.print(cell.getStringCellValue());


            }

        }
        System.out.println();

    }

}

dan inilah semua kesalahan yang saya dapatkan ketika saya mencoba menjalankannya:

    Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/collections4/ListValuedMap
    at project.Test.main(Test.java:28)
    Caused by: java.lang.ClassNotFoundException: org.apache.commons.collections4.ListValuedMap
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    ... 1 more

person Ali    schedule 11.02.2017    source sumber
comment
Anda pasti mengimpor semua kelas yang jelas Anda butuhkan di Tes kelas Anda. Namun pesan kesalahan memberitahu Anda, bahwa Apache POI juga memerlukan paket org.apache.commons. Apakah Anda juga mengimpor ini ke proyek Anda? Saya rasa tidak. Dan itulah alasan CNFE Anda.   -  person Lynx 242    schedule 11.02.2017


Jawaban (1)


Anda perlu menambahkan file commons-collections4-x.x.jar di jalur build Anda dan mencobanya lagi. Ini seharusnya berhasil.

Dapatkan dari sini: https://mvnrepository.com/artifact/org.apache.commons/commons-collections4/4.0

Selain itu, tambahkan saja:
Anda mendapatkan kesalahan ini (NoClassDefFoundError) terutama karena dua alasan:

  1. Mesin Virtual Java tidak dapat menemukan kelas tertentu pada waktu proses yang tersedia pada waktu kompilasi.

  2. Jika suatu kelas ada selama waktu kompilasi tetapi tidak tersedia di jalur kelas Java selama waktu proses.

person Manoj Kengudelu    schedule 11.02.2017