Почему вы должны добавить classpath при попытке выполнить Java-программу из встроенного терминала в intellij? - PullRequest
0 голосов
/ 24 января 2019

Я только начал использовать Intellij и хотел запустить простую Java-программу из встроенного терминала.Я использую Ubuntu

Main.java находится в ~ / IdeaProjects / Test0 / src / app

Из встроенного терминала, после компиляции с использованием javac я пытаюсь.

~/IdeaProjects/Test0/src$ java app.Main

, что приводит к

Error: Could not find or load main class app.Main
Caused by: java.lang.ClassNotFoundException: app.Main

Это код

package app;

public class Main {

    public static void main(String[] args) {
    // write your code here
        System.out.println("Hello World!");
    }
}

Но когда я выполняю ту же команду в той же директории на реальном терминале.Программа работает просто отлично.

Используя кнопку запуска в intellij ide.Он выполняет команду во встроенном терминале.

usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/java -javaagent:/snap/intellij-idea-community/113/lib/idea_rt.jar=40685:/snap/intellij-idea-community/113/bin -Dfile.encoding=UTF-8 -classpath /home/user/IdeaProjects/Test0/out/production/Test0 app.Main

И это прекрасно работает.

Почему для работы intellij необходимо объявить путь к классам?Почему он не может выполнить с помощью java app.Main?

1 Ответ

0 голосов
/ 24 января 2019

Позвольте мне предположить, что исходная проблема, которая требует решения, - это просто запуск вашего кода. IntelliJ - это IDE, и одна из проблем, которую он решает, заключается в том, что вам больше не нужно запускать код из командной строки.

Вы можете импортировать и запустить свой код:

  1. Нажмите Файл / Открыть
  2. Просмотрите файл Main.java в папке вашего проекта
  3. Щелкните правой кнопкой мыши на главном файле
  4. Выберите Запустить Main.main ()

И вы можете увидеть результаты в кадре Run, который всплывает в нижней части IDE. Отныне вы можете повторить то же самое, нажав зеленую кнопку воспроизведения в правом верхнем углу экрана.

Вот список воспроизведения для получения дополнительной информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...