Android Studio не удалось найти или загрузить основной класс файла «Скретч» - PullRequest
0 голосов
/ 23 января 2019

Обновление : приведенная ниже проблема сохраняется до Android Studio 3.4.2.


Я использую Android Studio 3.3 и создал файл scratch (File > new > Scratch File > Java).В среде IDE scratch.java в ~/.AndroidStudio3.3/config/scratches:

class Scratch {
    public static void main(String[] args) {

    }
}

Но когда я запускаю этот рабочий файл (нажатием зеленой кнопки рядом с именем класса или методом main), я получаю эту ошибку:

Error: Could not find or load main class Scratch

Я думаю, что IDE не делает Scratch.class и поэтому Java не может его найти.Есть ли способ решить эту проблему и запустить рабочие файлы из IDE (без использования Terminal)?

1 Ответ

0 голосов
/ 01 июля 2019

Единственный способ заставить это работать (в Android Studio 3.4.1) - это очень грязный подход:

  1. Перейти к Run> Edit Configurations> Scratch
  2. В Before launch внизу добавить (+) Run External tool
  3. Во всплывающем окне «Внешние инструменты» нажмите + и введите следующее Tool Settings

    Имя : Compile Scratch

    Программа : javac

    Аргументы : $FileName$

    Рабочий каталог : каталог с пустыми файлами

  4. Нажмите ОК
  5. Снова во всплывающем окне «Внешние инструменты» нажмите + и введите следующее Tool Settings

    Имя : Run Scratch

    Программа : java

    Аргументы : $FileClass$

    Рабочий каталог : каталог с пустыми файлами

  6. Нажмите OK и применить в конфигурациях Run / Debug

Странно, это работает, только если вы используете зеленые стрелки рядом с объявлением class / main. Если вы используете кнопку «Выполнить» в меню, это также не работает.

Вы все равно получите ошибку not found на вкладке Scratch окна запуска. Но появятся две дополнительные вкладки (по одной для каждого внешнего инструмента). На вкладке Run Scratch вы получите вывод.

Мне лично это не нравится, но это лучший обходной путь, который я придумал.

...