Java-программа странное поведение, как это исправить? - PullRequest
0 голосов
/ 25 марта 2010

Мой ноутбук оснащен процессором Intel, работающим под управлением Windows Vista. Моя программа выглядит так:

public class Tool_Lib_Simple
{
  public static void main(String[] args)
  {
    System.out.println("123");
  }
}

Когда я запускаю его, я ожидаю увидеть: «123», но вывод был: «Привет, НМ: Как дела, НМ?» что было старым выходным за два дня до того, как я сменил программу. Если я скопирую эту программу в другой проект в Netbean 6.7, она будет работать правильно и выведет «123», а если я изменю имя программы с «Tool_Lib_Simple» на что-то другое, она также выведет «123», но только не под имя "Tool_Lib_Simple" в каталоге src текущего проекта, я удалил каталог "build" и перекомпилировал, перекомпилировал, он все равно дает мне "Привет, NM: Как дела, NM?" в результате, мне кажется, старая версия моей программы сохранена на жестком диске или оперативной памяти и застряла там, я программировал много лет, вряд ли когда-либо сталкивался с такой проблемой, как это исправить?

Frank


Редактировать:

Как Брайан предложил ниже, я запустил его из командной строки:

java -cp "C: ... \ build \ classes" Tool_Lib_Simple

Результат: "123"

Теперь, похоже, причина в NetBeans6.7 (я тоже пробовал 6.8, тот же результат), я удалил «Tool_Lib_Simple.java» из проекта, скопировал его обратно из другого проекта, но результат все тот же, это указывает на более старую версию, как я могу преодолеть эту проблему? [Я пробовал чистить и восстанавливать много раз, не сработало]

Ответы [ 4 ]

2 голосов
/ 25 марта 2010

Я бы перекомпилировал это. или скомпилируйте его вручную. Но в Netbeans я думаю, что вы можете нажать на проект и щелкнуть «построить» или «очистить и собрать».

1 голос
/ 25 марта 2010

Как у вас это работает? Попробуйте (из командной строки)

java -cp {path to your class} Tool_Lib_Simple

и это должно работать. Я предполагаю, что либо ваш личный classpath, либо ваш IDE classpath указывает на другой экземпляр. find, вероятно, используется здесь, чтобы найти различные экземпляры вашего класса.

0 голосов
/ 26 марта 2010

Щелкните правой кнопкой мыши по вашему новому проекту и выберите «Установить основной проект», затем нажмите F6, и вы должны увидеть правильный результат. Или, если вы хотите запустить текущий файл, который вы редактируете, нажмите SHIFT F6. (Или как вы запускаете программу с помощью мыши или клавиатуры?)

Если это не поможет, попробуйте отключить компиляцию при сохранении в свойствах (щелкните правой кнопкой мыши проект).

Если это не поможет, может быть, вы выбрали неправильное имя пакета файла? Попробуйте это исправить.

Ссылка на ваш сжатый проект здесь, и мы могли бы помочь найти решение.

0 голосов
/ 25 марта 2010

Netbeans предлагает возможность очистки и сборки, которая должна удалять старые скомпилированные классы и выполнять только новый код. На панели инструментов netbeans щелкните значок, похожий на молоток и метлу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...