Java запуск из командной строки. Error: Could not find or load main class . [Solvid]

Изображение пользователя vap.

Доброго времени суток.

Пытаюсь разобраться с java пишу

public class Vap {
    public static void main (String args[])
    {
        System.out.println ("Hello World!");
    }
}

запускаю все нормально
$ javac Vap.java
$ java  Vap
Hello World!

но если прописываю название пакета

package com.vap.myapplication;


public class Vap {
    public static void main (String args[])
    {
        System.out.println ("Hello World!");
    }
}

то выдает ошибку либо так

$ java  Vap
Error: Could not find or load main class Vap
Caused by: java.lang.NoClassDefFoundError: com/vap/myapplication/Vap (wrong name: Vap)

либо

$ java  com.vap.myapplication.Vap
Error: Could not find or load main class com.vap.myapplication.Vap
Caused by: java.lang.ClassNotFoundException: com.vap.myapplication.Vap

нашел статью

Способы исправления java.lang.NoClassDefFoundError в Java J2EE

но ничего в ней не понял.
Кто нибудь по проще сможет объяснить в чем я не прав.

UPD создание дерева директории и перенос туда файла решил все проблемы.
mkdir com/vap/myapplication
cp Vap.class ./com/vap/myapplication
java  com.vap.myapplication.Vap

Комментарии (1)

0
Fogma - 25 Май, 2020 - 12:36
Изображение пользователя Fogma.

думаю стоит смотреть в сторону параметра CLASSPATH при запуске java программы

Отправить комментарий

CAPTCHA на основе изображений
Введите цифры