Проблема с классами Java - PullRequest
       5

Проблема с классами Java

0 голосов
/ 20 апреля 2011

У меня ошибка при выполнении этого кода ниже:

import java.awt.*;
import javax.swing.*;

import org.fife.ui.rtextarea.*;
import org.fife.ui.rsyntaxtextarea.*;

public class TextEditorDemo extends JFrame {

   private static final long serialVersionUID = 1L;


   public TextEditorDemo() {

      JPanel cp = new JPanel(new BorderLayout());

      RSyntaxTextArea textArea = new RSyntaxTextArea();
      textArea.setSyntaxEditingStyle(SyntaxConstants.SYNTAX_STYLE_JAVA);
      RTextScrollPane sp = new RTextScrollPane(textArea);
      cp.add(sp);

      setContentPane(cp);
      setTitle("RSyntaxTextArea 1.4 - Example 1 - Text Editor Demo");
      setDefaultCloseOperation(EXIT_ON_CLOSE);
      pack();
      setLocationRelativeTo(null);

   }

   public static void main(String[] args) {
      // Start all Swing applications on the EDT.
      SwingUtilities.invokeLater(new Runnable() {
         public void run() {
            new TextEditorDemo().setVisible(true);
         }
      });
   }
}

Когда я запускаю с использованием java -classpath rsyntaxtextarea.jar;. TextEditorDemo, я не получаю вывод.вместо этого я получаю сообщение об ошибке:

Exception in thread "main" java.lang.NoClassDefFoundError: TextEditorDemo
Caused by: java.lang.ClassNotFoundException: TextEditorDemo
    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:307)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: TextEditorDemo.  Program will exit.

Может кто-нибудь помочь!Этот пример взят из RSyntaxTextArea

Ответы [ 2 ]

1 голос
/ 20 апреля 2011

Ваш класс неверен.Он найдет только класс в jar-файле.Чтобы узнать, как задать classpath для файла jar и для вашего класса, посмотрите на мой ответ на этот вопрос: compile sample.java и jgraph_5.8.3.1.jar

1 голос
/ 20 апреля 2011

Это проблема с classpath.

java -classpath rsyntaxtextarea.jar;. TextEditorDemo

Как настроено в данный момент, виртуальная машина ожидает найти «TextEditorDemo.class» в том же каталоге, из которого вы запускаете «java», и что «rsyntaxarea.jar» также находится в этом каталоге,Убедитесь, что эти файлы действительно находятся в текущем каталоге.Если нет, добавьте необходимую информацию о пути к банке и местоположение файла TextEditorDemo.class.

РЕДАКТИРОВАТЬ: исходный путь к классу имеет ";."в конце - вопрос был отредактирован и удален..;.необходимо, чтобы классы загружались из текущего каталога.

...