Запуск приложения Java NoClassDefFoundError - PullRequest
1 голос
/ 13 декабря 2010

Когда я запускаю свою программу из терминала, выполняя команду java rmiserver.LightBulbServer.class, я получаю NoClassDefFoundError :

Exception in thread "main" java.lang.NoClassDefFoundError: rmiserver/LightBulbSe
rver/class
Caused by: java.lang.ClassNotFoundException: rmiserver.LightBulbServer.class
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)
Could not find the main class: rmiserver.LightBulbServer.class.  Program will ex
it.

Ответы [ 3 ]

1 голос
/ 13 декабря 2010

Вы запускаете команду:

java rmiserver.LightBulbServer.class

когда вы должны работать

java rmiserver.LightBulbServer
1 голос
/ 13 декабря 2010

Скорее всего, вы запускаете приложение так:

java rmiserver.LightBulbServer.class

Вы не должны добавлять расширение .class при запуске вашей программы; используйте только название класса:

java rmiserver.LightBulbServer
0 голосов
/ 13 декабря 2010

Вам нужно установить некоторые переменные, прежде чем Java сможет что-либо делать в системе.Вот почему некоторые люди создают командные файлы для запуска своих программ на Java без изменения системных переменных.

Но обычно это происходит потому, что вы не установили CLASSPATH .

Например, вот что может или не может работать:

set JAVA_HOME=C:\jdk1.5.0_06
set PATH=C:\jdk1.5.0_06\bin;C:\Windows;C:\Windows\System32
set CLASSPATH=.

java -jar myprogram.jar

Или попробуйте эту команду:

java -jar myprogram.jar -classpath .
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...