Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.03.2019, 20:55   #1
kompildan
Пользователь
 
Регистрация: 16.02.2019
Сообщений: 14
По умолчанию Ошибка при проверке проекта с использованием Maven

если просто запустить проект без maven, то всё работает, а с ним выскакивает несколько ошибок одного характера:
Main.java:[74,21] local variable TfoodName is accessed from within inner class; needs to be declared final
Код:
package sample;
import javafx.application.Application;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.*;
import javafx.scene.input.KeyCode;
import javafx.scene.input.KeyEvent;
import javafx.scene.input.MouseEvent;
import javafx.scene.layout.HBox;
import javafx.scene.layout.VBox;
import javafx.scene.text.Font;
import javafx.stage.Stage;
 
public class Main extends Application {
 
 
    public static void main (String[] args) {
        Application.launch(args);
    }
 
    /**
     * Создание GUI
     * @param primaryStage начальная сцена приложения
     */
    @Override
    public void start (Stage primaryStage) {
        HBox root = new HBox();
        VBox Vcook = new VBox();
        VBox Vproger = new VBox();
 
        Button cook = new Button("Приготовить!");
        Button eatProger = new Button("Скушать!");
        Button eatCook = new Button("Скушать!");
        Button code = new Button ("Кодить!");
        cook.setMinWidth(150);
        eatProger.setMinWidth(150);
        eatCook.setMinWidth(150);
        code.setMinWidth(150);
 
        ProgramLogic Logic = new ProgramLogic();
 
        TextField TfoodName = new TextField("");
        TfoodName.setPrefSize(150, 15);
 
        TextArea console = new TextArea("Ваш код будет тут");
        console.setMinSize(150, 200);
        console.setFont(new Font("Courier New", 12));
        console.setWrapText(true);
 
        ListView<String> ListFood = new ListView<String>();
        ListFood.setMinSize(150, 150);
        ObservableList<String> List = FXCollections.observableArrayList();
 
        Vcook.getChildren().addAll (ListFood, TfoodName, cook, eatCook);
        Vproger.getChildren().addAll(console, code, eatProger);
        root.getChildren().addAll(Vcook, Vproger);
 
        cook.setOnMouseClicked((new EventHandler<MouseEvent>() {
            public void handle(MouseEvent event) {
                if (TfoodName.getText().equals("")) {
                    ShowFoodAlert();
                }
                else {
                    Logic.cook(TfoodName.getText());
                    List.add (TfoodName.getText());
                    ListFood.setItems(List);
                    TfoodName.setText("");
                }
            }
        }));
        eatCook.setOnMouseClicked((new EventHandler<MouseEvent>() {
            public void handle(MouseEvent event) {
                if (!Logic.getArrayList().isEmpty()) {
                    ShowCookTasteAlert(Logic.eatCook());
                    List.remove(List.size()-1);
                    ListFood.setItems(List);
                }
            }
        }));
        eatProger.setOnMouseClicked((new EventHandler<MouseEvent>() {
            public void handle(MouseEvent event) {
                if (!Logic.getArrayList().isEmpty()) {
                    ShowProgerTasteAlert(Logic.eatProger());
                    List.remove(List.size()-1);
                    ListFood.setItems(List);
                }
            }
        }));
        code.setOnMouseClicked((new EventHandler<MouseEvent>() {
            public void handle(MouseEvent event) {
                console.setText (Logic.coding());
            }
        }));
        TfoodName.setOnKeyPressed((new EventHandler<KeyEvent>() {
            @Override
            public void handle(KeyEvent event) {
                if (event.getCode()== KeyCode.ENTER) {
                    if (TfoodName.getText().equals("")) {
                        ShowFoodAlert();
                    }
                    else {
                        Logic.cook(TfoodName.getText());
                        List.add (TfoodName.getText());
                        TfoodName.setText("");
                        ListFood.setItems(List);
                    }
                }
            }
        }));
        Scene scene = new Scene (root, 300, 250);
        primaryStage.setTitle("Laba 2");
        primaryStage.setScene(scene);
        primaryStage.centerOnScreen();
        primaryStage.show();
    }
 
    private void ShowFoodAlert() {
        Alert alert = new Alert (Alert.AlertType.INFORMATION);
        alert.setTitle ("А-та-та");
        alert.setHeaderText(null);
        alert.setContentText("нехорошо подавать безымянное блюдо!");
        alert.showAndWait();
    }
 
    private void ShowProgerTasteAlert(Food food) {
        Alert alert = new Alert (Alert.AlertType.INFORMATION);
        alert.setTitle ("Вкуснота-то какая!");
        alert.setHeaderText(null);
        alert.setContentText("Кажется, вкус этого блюда: " + food.tasteToString().toLowerCase()+"\n"+
                "Было вкусно, но ...... вкуснее");
        alert.showAndWait();
    }
 
    private void ShowCookTasteAlert(Food food) {
        Alert alert = new Alert (Alert.AlertType.INFORMATION);
        alert.setTitle ("Вкуснота-то какая!");
        alert.setHeaderText(null);
        alert.setContentText("Кажется, вкус этого блюда: " + food.tasteToString().toLowerCase()+"\n"+
                "В следующий раз добавлю больше перца и лавровый листик");
        alert.showAndWait();
    }
}
Изображения
Тип файла: jpg Снимок экрана от 2019-03-09 19-22-13.jpg (100.1 Кб, 137 просмотров)
kompildan вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
rpm-maven-plugin ошибка при сборке wiremann Общие вопросы по Java, Java SE, Kotlin 1 03.09.2017 19:23
Ошибка при jar пакинге maven проекта. den2904 Общие вопросы по Java, Java SE, Kotlin 1 02.05.2016 20:13
Ошибка в проверке oteccc Общие вопросы Delphi 6 11.12.2013 14:44
Ошибка при проверке программы Mihanches Работа с сетью в Delphi 12 19.09.2010 14:42
Ошибка в проверке! JulLy Общие вопросы C/C++ 4 02.12.2009 01:08