【问题标题】:Why do you have to add a classpath when trying to execute a java program from the embedded terminal in intellij?为什么在 intellij 中尝试从嵌入式终端执行 java 程序时必须添加类路径?
【发布时间】:2019-01-23 22:53:00
【问题描述】:

我刚开始使用 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 执行?

【问题讨论】:

    标签: java intellij-idea


    【解决方案1】:

    让我假设需要解决的原始问题只是运行您的代码。 IntelliJ 是一个 IDE,它解决的问题之一是您不再需要从命令行运行代码。

    您可以通过以下方式导入和运行您的代码:

    1. 点击文件/打开
    2. 浏览项目文件夹中的 Main.java
    3. 右键单击主文件
    4. 选择运行 Main.main()

    您可以在 IDE 底部弹出的 Run 框架中看到结果。 从现在开始,您可以通过单击屏幕右上角的绿色播放按钮重新运行相同的操作。

    Here is a playlist 了解更多信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-07-12
      • 2020-04-01
      • 1970-01-01
      • 2016-12-11
      • 2020-03-28
      • 2015-04-13
      • 2014-10-19
      • 2018-04-04
      相关资源
      最近更新 更多