java.lang.ClassNotFoundException с указанной библиотекой - PullRequest
0 голосов
/ 05 мая 2018

Я искал решение в течение нескольких часов, и до этого момента ни одно из приведенных здесь решений не помогло мне. Может быть, это потому, что я новичок в Eclipse и Java, но терпите меня.

Моя проблема заключается в следующем: У меня есть класс от моего профессора по имени Грид. Одной из функций Grid является создание Grid с помощью «Grid.create (int columnNumber, int rowNumber). Я сохранил класс в папке на своем рабочем столе с путем« Desktop / classes / lec / utils / Grid.class »( Я создал папки, как это было сказано в другой теме). Я импортировал папку с помощью «Свойства -> Путь сборки -> Библиотеки -> Добавить внешнюю папку». Я также дал строку импорта "import lec.utils. *;" и Eclipse не показывает ошибки со всем этим. Но каждый раз, когда я хочу использовать Grid.create (a, b), он показывает следующую ошибку:

Exception in thread "main" java.lang.NoClassDefFoundError: Grid
at Aufgaben.sudoku.main(sudoku.java:9)
Caused by: java.lang.ClassNotFoundException: Grid
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 1 more

Мой код выглядит следующим образом:

package Aufgaben;

import lec.utils.*;

public class sudoku {

    public static void main(String[] args) {

        Grid.create(9, 9);

    }
}

А моя боковая панель выглядит так:

моя боковая панель

Если вам нужна какая-либо другая информация, пожалуйста, дайте мне знать.

Edit:

Вкладка "Заказ и экспорт"

1 Ответ

0 голосов
/ 07 мая 2018

Возможно получить ClassNotFoundException, если у класса есть статический инициализатор, который выдает исключение. Такое исключение предотвратит загрузку класса в JVM. Программа получает ClassNotFoundException, когда программа пытается сослаться на него. Я не уверен, что это то, что происходит, но есть простой способ узнать.

Заменить "Grid.create (9, 9)"; с "Класс myclass = Grid.class;" и посмотреть, если это работает. Если это так, то вы знаете, что ваша установка Eclipse правильная, и проблема в самом классе, а не в вашей настройке.

...