Я создал простой класс Java:
package com.name;
public class Main {
public static void main (String [] args) {
System.out.println("I have made it");
}
}
и сохраните его в Main.java
Затем я сделал java Main.java, и я вижу Main.class
Я попытался запустить его как:
java Main
java com.name.Main
но я продолжал получать:
Error: Could not find or load main class Main
Мой вывод java -version:
java version "1.8.0_191"
Java(TM) SE Runtime Environment (build 1.8.0_191-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)
и моя переменная окружения $JAVA_HOME:
/Library/Java/JavaVirtualMachines/jdk1.8.0_191.jdk/Contents/Home




Ваш класс находится в пакете com.name, поэтому загрузчик классов ожидает найти его в подкаталоге com/name:
mkdir -p com/name
mv Main.class com/name
java com.name.Main
В вопросе и ответе не упоминается этап компиляции. Возможно, стоит включить это, поскольку именно так файл класса был создан в верхнем каталоге с самого начала. Установите правильный путь к классам и скомпилируйте + выполните из корневого каталога, а не из подкаталога.