簡體   English   中英

嘗試從intellij的嵌入式終端執行Java程序時,為什么必須添加類路徑?

[英]Why do you have to add a classpath when trying to execute a java program from the embedded terminal in intellij?

我剛剛開始使用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 IDEA中的運行按鈕。 它在嵌入式終端中執行命令。

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執行?

讓我假設需要解決的原始問題只是運行您的代碼。 IntelliJ是一個IDE,它解決的問題之一是您不再需要從命令行運行代碼。

您可以通過以下方式導入和運行代碼:

  1. 單擊文件/打開
  2. 在項目文件夾中瀏覽Main.java
  3. 右鍵單擊主文件
  4. 選擇運行Main.main()

您會在IDE底部彈出的“運行”框中看到結果。 從現在開始,您可以通過點擊屏幕右上角的綠色播放按鈕來重新運行該播放器。

這是一個用於了解更多信息的播放列表

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM