Приложение JAVA Swing + исполняющая банка - PullRequest
1 голос
/ 25 июля 2011

Я новичок в программировании на Java.Я загрузил пакет NetBeans (Java Java EE) в Ubuntu и написал простое приложение Swing, которое отлично работает с NetBeans.Я попытался запустить его из терминала, набрав «java -jar», как предлагал netbeans, и я получил ошибку «не удалось найти основной класс».Поэтому я попытался проверить путь к классу с помощью echo $ CLASSPATH и ничего не получил.Затем я установил путь к классу, используя $ set CLASSPATH =.Когда я снова попробовал «java -jar», я получил ту же ошибку (основной класс не найден). Echo $ CLASSPATH снова ничего не дает, хотя я пытался установить classpath.

Ответы [ 2 ]

1 голос
/ 25 июля 2011

Укажите точку входа в графический интерфейс.Обычно я называю этот класс Main

public class Main
{
    public static void main(String[] args) {

           java.awt.EventQueue.invokeLater(new Runnable() {
                   public void run() {
                       new MyJFrame();
                   }
               });  
          }
}

Далее, нажимаю вкладку Файлы (рядом с вкладкой проектов в левом верхнем углу) и ищу файл с именем Mainfest..mf.Вам нужно будет добавить атрибут Main-Class: в этот файл.

Main-Class: Main

Указывает банку, что выполнять при двойном щелчке или запуске из командной строки.

0 голосов
/ 25 июля 2011

Я не использую Netbeans, но я знаю, что java хочет в командной строке при использовании опции -jar.

Одной из возможностей является то, что в манифесте банки отсутствует объявление Main-class.Это объявление сообщает, где должна быть точка входа для программы при использовании опции вызова -jar.Он определяет определенный класс, имеющий метод main.

Чтобы проверить, что я имею в виду, попробуйте следующее на jar, созданном Netbeans ( Я предполагаю bash shellиз-за $ подсказки в вашем вопросе .. скажите мне, если я ошибаюсь ):

$ jar xf my.jar META-INF
$ cat META-INF/MANIFEST.MF | grep Main-Class

Если это произойдет пустым или не даст название вашему классу, то ваш следующий SOМожет возникнуть вопрос: «Как мне сказать NetBeans, какой класс является точкой входа при создании банки».

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