1. 程式人生 > >mac終端下執行java檔案報錯:找不到或無法載入主類

mac終端下執行java檔案報錯:找不到或無法載入主類

由面試題出來的
為了顯示 myStr = 23 這樣的結果,寫出在控制檯輸入的命令

public class MyClass {
public static void main(String args[]) {
String s1 = args[0];
String s2 = args[1];
String myStr = args[2]; System.out.printin(“myStr =” + s2 + myStr); }
}

答:java MyClass 1 2 3 4
想不通,後來網上搜索是在cmd下先編譯後寫入引數執行MyClass
後來在mac終端上嘗試,直接在此類的目錄下執行

java Test 1 2 3

一直報錯:找不到或無法載入主類
後來搜尋了,提示編譯在此類的所在目錄,但是執行要退回到包的上一級目錄下,例如:

package com.example.demo.test;

/**
 * @ProjectName demo
 * @ClassName Test
 * @Description TODO
 * @Author jing
 * @Date 2018/10/25 19:38
 * @Version 1.0
 **/
public class Test {
    public static void main(String arg[]) {
        String s1 = arg[0];
        String s2 = arg[1];
        String s3 = arg[2];
        System.out.print("s3=" + s2 + s3);
    }
}

所以,在mac終端下,退回到目錄

完整目錄    demo/src/main/java/com/example/demo/test
退回到java這個目錄下,執行
hhh:java jing$ java com.example.demo.test.Test 1 2 3

就成功了

s3=23