Я пытаюсь запустить пример приложения Java из команды promopt, но получаю следующую ошибку:
Exception in thread "main" java.lang.NoClassDefFoundError: com/badlogic/gdx/helloworld/HelloWorldDesktop
Caused by: java.lang.ClassNotFoundException: com.badlogic.gdx.helloworld.HelloWorldDesktop
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Could not find the main class: com.badlogic.gdx.helloworld.HelloWorldDesktop. Program will exit.
Команда, которую я использую для запуска этого приложения:
java -cp .;gdx.jar;gdx-backend-jogl.jar com.badlogic.gdx.helloworld.HelloWorldDesktop
Где все соответствующие файлы находятся в текущем рабочем каталоге (файлы .java, .class и .jar)
Команда, которую я использовал для создания файлов .class, была следующей (есть 2 файла .java):
javac -cp gdx.jar;gdx-backend-jogl.jar HelloWorld.java HelloWorldDesktop.java
Опять же, это было запущено из того же рабочего каталога - содержимое HelloWorldDesktop.java
(более или менее):
package com.badlogic.gdx.helloworld;
public class HelloWorldDesktop {
public static void main (String[] argv) {
// Application
}
}
Я пытаюсь изучать Java как разработчика C #, поэтому, имея глубокие познания в программировании, весь набор инструментов Java в настоящее время полностью смущает меня. Исключение указывает, что класс HelloWorldDesktop
не может быть найден, но, насколько я могу судить, у меня есть правильное имя, и я добавил правильные файлы .jar в путь к классу, и поэтому Java должна быть в состоянии загрузить этот класс.
Почему он не может найти HelloWorldDesktop
?