Ошибка: не удается найти или загрузить основной класс только при работе за пределами затмения

Я сделал приложение Java, которое работает нормально inside проблемы затмения, когда я экспортирую его как файл JAR, а затем пытаюсь запустить этот файл JAR через Windows CMD (текущий каталог такой же, как тот, где я экспортировал) с java "2Dwars 2.0.jar"

это говорит Error: Could not find or load main class 2Dwars 2.0.jar

Я много раз искал в google и stackru, у многих людей возникают похожие проблемы, но нет похожего решения.

мой основной класс выглядит следующим образом:

public class MainClass extends JFrame implements Controll.keyPressEvent
{

    static Render render;
    public init in;

    public MainClass()
    {
        new Options();

        setUndecorated(true);
        Options.setBoolean("Draw chunks", false);
        System.out.println("Test");

        add(new Render(new Controll()));

        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setSize(895, 675);

        setLocationRelativeTo(null);
        setTitle("2D wars");
        setResizable(false);
        setVisible(true);

        System.out.println("Adding render");


        System.out.println("Loaded Options.");
        System.out.println("added render");
        init in=new init();

        Controll.addListener(Controll.Key.ESC, this);

        new Sounds();   
    }

    public static void main(String[] args) 
    {           
        new MainClass();

    }

    @Override
    public void sendKeyPressEvent(KeyEvent e)
    {
        if(e.getKeyCode()==Controll.Key.ESC.getKeyCode())
        {
            System.exit(1);
        }
    }

}

Системные характеристики:

Windows vista 32 bit.
Jre 1.7 32 bit
JDk 5,6,7.

РЕДАКТИРОВАТЬ проблему можно решить, экспортировав ее как runnable и добавив -jar к аргументам команды, по какой-то причине jar пришлось экспортировать как Runnable Jar, чтобы найти основной класс.

1 ответ

Решение

Чтобы запустить его как файл JAR, вам нужно -jar вариант. Что-то вроде:

java -jar "2Dwars 2.0.jar"

(Я бы предложил использовать имя файла, в котором также нет пробелов для простоты.)

Другие вопросы по тегам