Java 130 Процесс завершен с кодом выхода 130

Я хочу протестировать код (ниже) для будущего проекта.

Я отображаю все contPanel.

Я выбираю несколько объектов contPanel.

Я удаляю только выбранную панель contPanel с помощью jButton

Он оставляет другую панель управления в кадре после удаления выбранной панели управления.

но весь контент не отображается, и я получаю сообщение об ошибке:

Отключено от целевой ВМ, адрес: «127.0.0.1:60359», транспорт: «сокет».

Процесс завершен с кодом выхода 130 (прерван сигналом 2: SIGINT)

Где я ошибаюсь? Что я могу сделать? Обновление Intellij ничего не меняет.

Мне:

1)

убунту 20.04

  1. разум

IntelliJ IDEA 2020.3 (версия для сообщества) Сборка №IC-203.5981.155 от 30 ноября 2020 г. Версия среды выполнения: 11.0.9+11-b1145.21 amd64 ВМ: 64-разрядная виртуальная машина сервера OpenJDK от JetBrains s.r.o. Linux 5.4.0-56-общий GC: ParNew, ConcurrentMarkSweep Память: 1981M Ядра: 8 Плагины, не входящие в комплект: com.jetbrains.edu Текущий рабочий стол: Ubuntu:GNOME

  1. Джава

Java-1.8.0-openjdk-amd64

package suggests.deleteCorrectItem;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;

public class Main extends JFrame{
    public ArrayList<Integer> alInteger = new ArrayList<Integer>();
    public ArrayList<ContPanel> alContPanel = new ArrayList<ContPanel>();
    public JPanel mainPanel = new JPanel();
    public int widthFrame = 700;
    public int heightFrame = 120;
    public Dimension dimensionFrame = new Dimension(widthFrame, heightFrame);
    public JScrollPane jScrollPane;
    public JButton jButtonDeleteAll =  new JButton();
    public DeleteListener deleteListener = new DeleteListener();
    public ContPanel contPanel;

    public static void main(String[] args){
        Main myMain = new Main();
    }
    public Main(){
        frameInitialization();
        setBackground(Color.BLUE);
        mainPanel.setBackground(Color.red);
        initObjects();
        buildLayout();
        setVisible(true);
    }
    public void frameInitialization(){
        this.setTitle("fenêtre de test");
        this.setSize(dimensionFrame);
        this.setResizable(true);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        addScrollPaneFrame();
    }
    public void addScrollPaneFrame(){
        jScrollPane = new JScrollPane(mainPanel);
        jScrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
        jScrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
        add(jScrollPane);
    }
    public void initObjects(){
        for ( int i = 0; i< 15;i++){
            alInteger.add(i);
             contPanel = new ContPanel(alInteger.get(i));
            contPanel.setBackground(Color.green);
            alContPanel.add(contPanel);
        }
        jButtonDeleteAll.addActionListener(deleteListener);

    }
    public void buildLayout(){
        mainPanel.setLayout(new BoxLayout(mainPanel, BoxLayout.PAGE_AXIS));
        jScrollPane.add(mainPanel);
        fillOfContPanel();
        setContentPane(jScrollPane);

    }
    public void fillOfContPanel(){
        for (int i = 0; i< alInteger.size(); i++){
            mainPanel.add(alContPanel.get(i));
        }
    }
    class ContPanel extends JPanel{
        public Integer integ;
        public JLabel jLabel = new JLabel();
        public JCheckBox jCheckBox = new JCheckBox();
        public ContPanel(Integer integ){
            setBackground(Color.BLACK);
            this.integ = integ;
            jLabel.setText(this.integ.toString());
            add(jLabel);
            add(jCheckBox);
        }
    }
    class DeleteListener implements ActionListener {
        @Override
        public void actionPerformed(ActionEvent actionEvent) {
            mainPanel = new JPanel();
            for(int i = alContPanel.size()-1; i>= 0 ; i--){
                if (alContPanel.get(i).jCheckBox.isSelected()){
                    alInteger.remove(i);
                    alContPanel.remove(i);
                }
            }
        }
    }
}

Отвечает ли это на ваш вопрос? Выход из программы Java с кодом "130"

Dmitry Spikhalskiy 24.03.2022 07:40
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
1
3 704
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я нашел проблемы. Проект заказывает. Я получаю агрессивные цвета

Если это может помочь кому-то

Я много чего поменял...

package suggests.deleteCorrectItem;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;

public class Main extends JFrame{
    /**
     This little project shows the display of elements from an arrayList
     with a dedicated checkbox for each of them to select them. The user the items to remove  and
     clicks the jButton.
     The selected items disappear.
     */
    public ArrayList<Integer> alInteger = new ArrayList<Integer>();
    public ArrayList<ContPanel> alContPanel = new ArrayList<ContPanel>();
    public JPanel mainPanel = new JPanel();
    public int widthFrame = 700;
    public int heightFrame = 600;
    public Dimension dimensionFrame = new Dimension(widthFrame, heightFrame);
    public JScrollPane jScrollPane;
    public JButton jButtonDeleteAll =  new JButton("Delete all selected items");
    public DeleteListener deleteListener = new DeleteListener();
    public ContPanel contPanel;

    public static void main(String[] args){
        Main myMain = new Main();
    }
    public Main(){
        frameInitialization();
        initObjects();
        buildLayout();
        setVisible(true);
    }
    public void frameInitialization(){
        this.setTitle("fenêtre de test");
        this.setSize(dimensionFrame);
        this.setResizable(true);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
    public void addScrollPaneFrame(){
        jScrollPane = new JScrollPane(mainPanel);
        jScrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
        jScrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
        add(jScrollPane);
    }
    public void initObjects(){
        for ( int i = 0; i< 15;i++){
            alInteger.add(i);
            contPanel = new ContPanel(alInteger.get(i));
            alContPanel.add(contPanel);
        }
        jButtonDeleteAll.addActionListener(deleteListener);

    }
    public void buildLayout(){
        mainPanel.setLayout(new BoxLayout(mainPanel, BoxLayout.PAGE_AXIS));
        addScrollPaneFrame();
       displayComponents();

    }
    public void refreshMainPanel(){
        clearMainPanel();
        displayComponents();
    }
    public void displayComponents() {
        fillOfContPanel();
        mainPanel.add(jButtonDeleteAll);
        setContentPane(jScrollPane);
    }
    public void clearMainPanel(){
        mainPanel.removeAll();
    }
    public void fillOfContPanel(){
        for (int i = 0; i< alInteger.size(); i++){
            mainPanel.add(alContPanel.get(i));
        }
    }
    class ContPanel extends JPanel{
        /**
         this class represents the item for a specific element of
         an arrayList with a dedicated checkbox.
         */
        public Integer integ;
        public JLabel jLabel = new JLabel();
        public JCheckBox jCheckBox = new JCheckBox();
        public ContPanel(Integer integ){
            this.integ = integ;
            jLabel.setText(this.integ.toString());
            add(jLabel);
            add(jCheckBox);
        }
    }
    class DeleteListener implements ActionListener, Runnable {
        /**
         *
         * @param actionEvent
          this class allows to remove the selected items
          and display the mainPanel after deletion.
         */
        @Override
        public void actionPerformed(ActionEvent actionEvent) {
            run();
        }
        @Override
        public void run() {
            for(int i = alContPanel.size()-1; i>= 0 ; i--){
                if (alContPanel.get(i).jCheckBox.isSelected()){
                    alInteger.remove(i);
                    alContPanel.remove(i);
                }
                refreshMainPanel();
            }
        }
    }
}

Другие вопросы по теме