Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: Библиотека Swing - делаем окно  (Прочитано 1201 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн kostela

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
  • я такой
    • Просмотр профиля
Библиотека Swing - делаем окно
« : 29 Августа 2010, 23:42:27 »
Добрый!
Написал простую программу для создания окна:

package progs;
import javax.swing.*;

public class MyFrame
    extends JFrame {
    public MyFrame(){
        setLocation(400, 200);
    setSize(200, 200);
    setTitle("Title");
  }

  public static void main(String[] args) {
    new MyFrame().setVisible(true);
  }
}

На запуске выдает ошибку:
Exception in thread "main" java.lang.NoClassDefFoundError: MyFrame (wrong name: progs/MyFrame)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
at java.net.URLClassLoader.access$000(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:212)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: MyFrame. Program will exit.

Аналогичная программа на библиотеке java.awt работает.
В чем может быть причина? ???
Вечное лето...

Оффлайн VestniK

  • Активист
  • *
  • Сообщений: 594
    • Просмотр профиля
Re: Библиотека Swing - делаем окно
« Ответ #1 : 29 Августа 2010, 23:53:18 »
а как запускаешь? Вообще-то судя по ошибке до запуска твоего кода дело не доходит, так что дело не в нём.

Оффлайн kostela

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
  • я такой
    • Просмотр профиля
Re: Библиотека Swing - делаем окно
« Ответ #2 : 30 Августа 2010, 01:39:35 »
Через терминал - java MyFrame

На Windows была аналогичная проблема.Но там дело решалось указанием библиотек в переменную среду CLASSPATH.
Вечное лето...

Оффлайн Sova777

  • Участник
  • *
  • Сообщений: 208
    • Просмотр профиля
    • Несколько слов о NetBeans C/C++ Pack'е
Re: Библиотека Swing - делаем окно
« Ответ #3 : 30 Августа 2010, 01:58:57 »
А надо выйти из progs и запустить
java progs/MyFrame или java progs.MyFrame
Пользователь OpenSolaris 2008.11, Ubuntu 8.10, Windows XP. Mac OS X не нравится, стараюсь не использовать.

Оффлайн kostela

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
  • я такой
    • Просмотр профиля
Re: Библиотека Swing - делаем окно
« Ответ #4 : 30 Августа 2010, 02:06:13 »
В каком смысле выйти из progs?
Извините, если туплю. ???

Пользователь решил продолжить мысль 30 Августа 2010, 02:17:46:
Убрал строку
package progs;

работает... :idiot2:
« Последнее редактирование: 30 Августа 2010, 02:17:46 от kostela »
Вечное лето...

Оффлайн hinotf

  • Участник
  • *
  • Сообщений: 208
  • хрюмзолорд
    • Просмотр профиля
Re: Библиотека Swing - делаем окно
« Ответ #5 : 30 Августа 2010, 10:08:31 »
Почитайте про то, что такое имя Java класса. Если коротко: в случае, если вы указываете, что ваш класс - это progs.MyFrame, то текст класса должен быть в файле progs/MyFrame.java
Aiya, Earendil, elenion ancalima!

Оффлайн VestniK

  • Активист
  • *
  • Сообщений: 594
    • Просмотр профиля
Re: Библиотека Swing - делаем окно
« Ответ #6 : 30 Августа 2010, 11:52:20 »
не текст класса, а скомпилированный *.class файл. Запускаются именно они.

Пример как правильно запускать Java приложения:
Если скомпилированные классы лежат в директории classes
vidyuk@peti-laptop:~/Development/test/jaba$ ls -R classes/
classes/:
pkg

classes/pkg:
MyClass.class
то делаем так:
java -cp classes pkg.MyClass
Hello world
« Последнее редактирование: 30 Августа 2010, 13:12:53 от VestniK »

Оффлайн kostela

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
  • я такой
    • Просмотр профиля
Re: Библиотека Swing - делаем окно
« Ответ #7 : 30 Августа 2010, 12:47:07 »
Спасибо, теперь всё понятно!)
Вечное лето...

 

Страница сгенерирована за 5.285 секунд. Запросов: 27.