[英]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
執行?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.