NoClassDefError при запуске метода - PullRequest
0 голосов
/ 20 июня 2011

Когда я пытаюсь запустить следующий код, появляется следующее сообщение об ошибке, и я не знаю, почему, это сработало буквально 10 минут назад

    KeyboardFocusManager.getCurrentKeyboardFocusManager().addKeyEventPostProcessor(newKeyEventPostProcessor() {
        public boolean postProcessKeyEvent(KeyEvent e) {
            if (e.getID() == KeyEvent.KEY_PRESSED) {
                if(e.isControlDown() && e.getKeyCode() == KeyEvent.VK_P){
                    printSinglePage();
                    e.consume();                           
                }
                if(e.isControlDown() && e.isAltDown() && e.getKeyCode() == KeyEvent.VK_P){
                    printAll();
                    e.consume();                           
                }
            }
            return true;
        }
    });

    public void printSinglePage(){
        if(tab.getSelectedComponent() instanceof DuctReport)
            PrintUtilities.printComponent(tab.getSelectedComponent(), DuctReport.PRINT_SIZE);
        else if(tab.getSelectedComponent() instanceof Vandy)
            PrintUtilities.printComponent(tab.getSelectedComponent(), Vandy.PRINT_SIZE);
        else
            PrintUtilities.printComponent(tab.getSelectedComponent(), .8);
    }

    public void printAll(){
        for(int i = 0; i < tab.getTabCount(); i ++){
            if(tab.getComponent(i) instanceof DuctReport)
                PrintUtilities.printComponent(tab.getComponent(i), DuctReport.PRINT_SIZE);
            else if(tab.getComponent(i) instanceof Vandy)
                PrintUtilities.printComponent(tab.getComponent(i), Vandy.PRINT_SIZE);
            else
                PrintUtilities.printComponent(tab.getComponent(i), .8);               
        }  
    }

вот ошибка:

Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: PrintUtilities
    at Main.printSinglePage(Main.java:282)
    at Main.menPrintAllActionPerformed(Main.java:221)
    at Main.access$600(Main.java:24)
    at Main$8.actionPerformed(Main.java:148)

Ответы [ 4 ]

3 голосов
/ 20 июня 2011

Как правило, NoClassDefFoundError является результатом проблем загрузчика классов или пути к классам. Убедитесь, что баночка не была переименована или перемещена, что ваш скрипт запуска правильный, и все в таком духе. Код, вероятно, в порядке, это среда.

Пожалуйста, рассмотрите возможность публикации более подробной информации о вашей инфраструктуре, IDE и о том, как запускались приложения, если вы все еще не можете это исправить.

1 голос
/ 20 июня 2011

Я видел такие странные ошибки при работе в NetBeans. Я часто делаю «Очистить и построить», чтобы это исправить. Иногда необходимо завершить работу NetBeans и очистить кэш NB.

0 голосов
/ 08 июля 2012

У меня была эта ошибка несколько раз.Главное, что вызывает у меня это - нулевое исключение при инициализации.Вторая вещь - это работа со статическими переменными при инициализации, очевидно, вы не можете работать с любым статическим массивом напрямую (и попытка использовать методы привела к этому).

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

0 голосов
/ 20 июня 2011

Это проблема окружающей среды, обычно очистка и перестройка проекта решают проблему.

...