Класс не найден, исключение?

Хорошо, я очень запутался. Вчера все работало нормально. Сегодня вдруг вылетает ошибка. Основная рамка открывается нормально, и первые несколько кнопок работают. Просто последние три вдруг не работают. Я получаю следующую ошибку, когда пытаюсь нажать эти кнопки (которые должны открывать новые окна)

В коде ничего не изменилось со вчерашнего дня, когда он работал нормально. Я могу открыть все отдельные java-файлы, и все они открываются нормально, код такой же, как был ... Что за фигня?

Что такое _1_? Это класс? Если да, он должен начинаться с заглавной буквы, но на самом деле это примечание. Однако у вас, вероятно, где-то есть проблема. Может быть дело в имени файла?


person Jason    schedule 29.10.2009    source источник


Ответы (3)


Если вы действительно не меняли заглавные буквы в своих классах и / или именах исходных файлов, я подозреваю, что настоящая проблема связана с вашим путем к классам. Например, ваш путь к классам может явно или неявно включать текущий каталог, и что в какой-то момент вы изменили текущий каталог; например между компиляцией и запуском вашего класса. Или, может быть, вы просто используете разные пути к классам для компиляции и запуска кода.

person Pascal Thivent    schedule 29.10.2009
comment
Что ж, если это Вино, так оно и будет. - person Jason; 29.10.2009
comment
А что насчет файла, содержащего класс? - person Nicholas Jordan; 29.10.2009
comment
Там тоже все было так же. В итоге я скопировал код в текстовый файл, затем удалил класс, создав новый с тем же именем и вставив обратно в него код. Теперь работает нормально. Все еще чешу в затылке, черт возьми ... ну да ладно, по крайней мере, теперь это работает. - person Pascal Thivent; 29.10.2009
comment
Исключение в потоке «AWT-EventQueue-0» java.lang.NoClassDefFoundError: my / freelancebillingapp / payStatusUI в my.freelancebillingapp.FreelanceBillingUI.paidClicked (FreelanceBillingUI.java:251) в my.freelanceBilling.png 18) в my.freelancebillingapp.FreelanceBillingUI $ 3.mouseClicked (FreelanceBillingUI.java:89) в java.awt.AWTEventMulticaster.mouseClicked (AWTEventMulticaster.java:253) в java.awt.Component.processMouseEvent (Component .swing.JComponent.processMouseEvent (JComponent.java:3267) в java.awt.Component.processEvent (Component.java:6028) в java.awt.Container.processEvent (Container.java:2041) в java.awt.Component. dispatchEventImpl (Component.java:4630) в java.awt.Container.dispatchEventImpl (Container.java:2099) в java.awt.Component.dispatchEvent (Component.java:4460) в java.awt.Lightweigh tDispatcher.retargetMouseEvent (Container.java:4574) в java.awt.LightweightDispatcher.processMouseEvent (Container.java:4247) в java.awt.LightweightDispatcher.dispatchEvent (Container.java:4168) в java.Implatch. .java: 2085) в java.awt.Window.dispatchEventImpl (Window.java:2475) в java.awt.Component.dispatchEvent (Component.java:4460) в java.awt.EventQueue.dispatchEvent (EventQueue.java:599) в java.awt.EventDispatchThread.pumpOneEventForFilters (EventDispatchThread.java:269) в java.awt.EventDispatchThread.pumpEventsForFilter (EventDispatchThread.java:184) в java.awt.Event.Dispatch. EventDispatchThread.pumpEvents (EventDispatchThread.java:169) в java.awt.EventDispatchThread.pumpEvents (EventDispatchThread.java:161) в java.awt.EventDispatchThread.run (EventDispatchThread.j ava: 122) Вызвано: java.lang.ClassNotFoundException: my.freelancebillingapp.paidStatusUI в java.net.URLClassLoader $ 1.run (URLClassLoader.java:200) в java.security.AccessController.doPrivileged (собственный метод) в java .URLClassLoader.findClass (URLClassLoader.java:188) в java.lang.ClassLoader.loadClass (ClassLoader.java:307) в sun.misc.Launcher $ AppClassLoader.loadClass (Launcher.java:301) в java.lang.ClassLoader. loadClass (ClassLoader.java:252) на java.lang. ClassLoader.loadClassInternal (ClassLoader.java:320) ... еще 24 - person Jason; 29.10.2009

Путаница в путях к классам и несогласованное именование классов по сравнению с исходным файлом - общие проблемы для людей, которые плохо знакомы с Java.

У меня такое случалось с помощью NetBeans. Когда памяти становится мало, компиляция прекращается, и проект внезапно перестает распознавать все классы. Единственный способ исправить это то, что вы сделали - удалите класс, а затем снова добавьте его.

person Stephen C    schedule 29.10.2009

Извините, здесь нет ответа, просто сочувствую.

да, это класс, но вчера он, похоже, не беспокоил программу. Код, который вызывает это, и имя класса точно такие же, без разницы в регистре.

person Bob Stout    schedule 23.05.2013