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

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

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

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

0
Goras - 6 Сентябрь, 2020 - 00:49

Есть такое дело. Настройки надо смотреть и параметрые менять. Если не знаешь что именно менять - то методом тыка. По другому сложней. Не угадаешь. Но похоже что коллега выше правильно написал про CLASSPATH - это надо проверить в первую очередь. И массивы на наличие ерора проверить так как java стартует если можно атк сказать именно с бд а если бд нет то все равно она ее ищет. Был подобный случай с Dark Sender специальный софт для социалок. Не сразу поняли кто есть ху но разобрались со временеим

Удачи коллеги!

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

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