2010-03-14 4 views
1

Я использую эту версию Java:относительно Java версии 1,3 до 1,4

Java версии "1.3.1_01" Java (TM) 2 Runtime Environment, Standard Edition (сборка 1.3.1_01) Java HotSpot (TM) Клиент VM (сборка 1.3.1_01, смешанный режим) `

Но я написал заявление и я получаю ошибку во время запуска

Exception in thread "main" java.lang.NoClassDefFoundError: java/lang/CharSequence 

CharSequence существует только начиная с 1.4.

Как я могу решить эту проблему?

+0

Очевидное решение, которое выскакивает является переключение на v1.4 или более поздней версии. Что мешает этому? Некоторая корпоративная политика? –

ответ

3

Похоже, что у вас есть код 1.4, который вы пытаетесь запустить на 1.3.

Вы принимаете классическую ошибку, считая, что ваши предположения верны. Проверьте свои предположения.

Оба JVM находятся за гранью их поддержки. Возможно, вам стоит подумать об обновлении. JDK 6 является текущим стандартом.

0

Согласно JavaDocs, интерфейс CharSequence реализуется с помощью CharBuffer, String и StringBuffer. Учитывая, что эти классы настолько глубоко внедрены во все, я не могу представить, как вы можете обойти эту проблему. Так два решения:

  • переписать класс CharSequence
  • использование Java 1.4
0

Просто попробуйте использовать строку вместо CharSequence, если вам нужно костюмы. В противном случае может быть char [] будет полезно. Это зависит. Покажите свой код, чтобы иметь более конструктивный разговор

1

Вы должны быть либо написано код (и скомпилирован) против более поздней версии в JDK/JRE, чем вы пытаетесь запустить его. Если вы должны придерживаться версии 1.3, убедитесь, что вы строите против 1.3.

Другой вариант: с использованием стороннего JAR, который был построен на более поздней версии JDK. В этом случае выясните, какая библиотека вызывает проблему и перестает ее использовать.

Или, если это возможно модернизировать всю среду до 1,6 (или 1,5, если это слишком современно для вас)

Смежные вопросы