Не создаются .class файлы при компиляции
Я делаю проект для курсовой, и у меня возникла проблема компиляции class файлов в классе с интерфейсом ActionListener
Ради этого я удалил все лишнее и оставил самое необходимое для решение проблемы
Есть главный файл MyPC.java, есть папка design, а в ней два файла: PlayerList.java и deleteButton.java. В классе deleteButton я оставил только вывод строки, так что это единственное, что делает программа
Если с первого раза скомпилировать приложение с помощью команды javac -encoding utf-8 MyPC.java, а потом запустить через java MyPC, то при нажатии кнопки слева вверху выведется Hello world, однако если задокументировать вывод и скомпилировать еще раз, то текст все равно будет выводиться, то есть deleteButton.class остался неизменным!
Однако если удалить все class файлы и скомпилировать еще раз, то запустится правильно(и если сильно исправить код, то есть что-то добавить, что-то удалить, то тоже создастся новый class файл), однако это очень долго
Пробовал на разных машинах, итог остался тем же, значит проблема в коде (и да, я пытался гуглить, выводились разные статьи, несоответствующие моей проблеме)
Помогите, пожалуйста
//MyPC.java
import design.*;
public class MyPC{
public static void main(String[] args) {
PlayerList GUI = new PlayerList();
//System.out.println("Breakpoint");
GUI.show();
}
}
//PlayerList.java
package design;
import java.awt.BorderLayout;
import javax.swing.*;
public class PlayerList {
// Объявления графических компонентов
private JFrame playerList;
private JButton delete;
private JToolBar toolBar;
public void show() {
// Создание окна
playerList = new JFrame("Список футболистов");
playerList.setSize(750, 400);
playerList.setLocation(150, 150);
playerList.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// Создание кнопок и прикрепление иконок
delete = new JButton(new ImageIcon("./img/delete.png"));
// Настройка подсказок для кнопок
delete.setToolTipText("Выгнать игрока");
// Добавление кнопок на панель инструментов
toolBar = new JToolBar();
toolBar.add(delete);
// Размещение панели инструментов
playerList.setLayout(new BorderLayout());
playerList.add(toolBar, BorderLayout.NORTH);
delete.addActionListener(new deleteButton()); //если забагуется, верну обратно
// Визуализация экранной формы
playerList.setVisible(true);
}
}
//deleteButton.java
package design;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class deleteButton implements ActionListener{
public void actionPerformed(ActionEvent e){
System.out.println("hello world");
}
}