Друзья, привет! Нужна помощь!
Столкнулся с проблемой - Idea после правого клика по закладке окна с кодом и клика по Run Solution.main() выдает ошибку из сосдених классов! Например я вытаюсь запустить сom/javarush/task/task10/task1019/Solution.java а ошибка при запуске выскакивает на /task1016/Solution.java, к решению которого я еще не приступал! Причем если класс task016 удалить, что ошибка пропадает и все работает!
Ошибка проявляется только с сегодняшнего дня, не пойму в чем дело. Грешу на плагин. Помогите, если кто сталкивался, пожалуйста.
Yaroslav
29 уровень
Idea перестала запускать по Run...
Комментарии (3)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Yaroslav
2 мая 2020, 21:56
Нашел ответ!
Откуда-то в конфигурации Run... появился шаг Build, удалив его оттуда, все заработало как раньше.
0
Justinian Judge в Mega City One Master
2 мая 2020, 23:48
По аналогии с автомобилем, у тебя моргала лампочка перегрева двигателя на панеле приборов, и ты не понимал отчего.
И ты нашел решение - отключил проверку температуры двигателя..
Спорное решение.
Программа это проект. В нашем случае проект - JavaRushTasks. Программа может структурно делиться на самостоятельные модули. В нашем случае модули это квесты (1. JavaSyntax, 2. JavaCore, 3. JavaMultithreading, 4. JavaCollections).
Запуская класс с задачей, то есть ЛЮБОЙ компонент нашей Программы или ее отдельного модуля, весь код ( в нашем случае - модуля, конкретного квеста) проверяется на ошибки компилятором.
Если есть нерешенная задача, которая не компилируется (отсутсвуют нужные фигурные скобки, нету return и другие ошибки, которые выделены красным), мы не сможем запустить другие классы этого проекта/модуля.
А вдруг мы в своем коде ссылаемся на этот класс, в котором ошибки, а там синтаксический коллапс:
Поэтому нельзя в рамках конкретного модуля/проекта оставлять классы/задачи в некомпилированном состоянии (когда Идея нам подсвечивает красным). Для этого можно:
- если метод нереализован, но что-то должен возвращать ставить заглушки (return 1, return "", return new HashMap<>()) наиболее популярный способ , это вместо заглушок просто писать throw UnsupportedOperationException(); тогда return не нужен
- либо комментировать, лишь бы код скомпилировался и не мешал запускать другие задачи, выделяем проблемный кусок кода и нажимаем CTRL+/
Когда мы потом вернемся к этой задаче, потом просто уберем заглушки и комментирование. +3
Yaroslav
3 мая 2020, 07:27
Спасибо за полезный и быстрый ответ!
Задачи решаю в оффлайне и выкачиваю сразу 10-15 задач, а затем решаю по одной.
0