Подтвердить что ты не робот

Несовместимое магическое значение 1008813135

Я пишу апплет Java и встраиваю его в веб-страницу. Он использовался для запуска Mac и Windows в разных браузерах без проблем. Я использовал NetBeans на Mac для создания файла .jar, который использовал апплет.

По той или иной причине я решил загрузить проект в Windows NetBeans - я начал получать следующую ошибку на машине Windows при доступе к веб-странице из любого браузера:

java.lang.ClassFormatError: Incompatible magic value 1008813135 in class file

Опасаясь, что это было мое решение открыть проект в Windows, вызвавший эту ошибку, я попытался построить с Mac NetBeans, но ошибка сохранилась.

Я начал новый проект на Mac и импортировал существующий исходный код: еще одна проблема.

Я читал об этой ошибке, и кажется, что ожидаемое магическое число - это 0xCAFEBABE в шестнадцатеричном формате, которое равно 3405691582 в десятичной системе, а не 1008813135. Таким образом, похоже, что версия Mac для Java не создает этот заголовок файла больше? Это может быть мотыга? Я не делал никаких обновлений или ничего.

4b9b3361

Ответ 1

Да, 0xCAFEBABE - это обычные первые 4 байта файла Java.

1008813135 <!DO в латинском кодировании, которое, по всей вероятности, является началом <!DOCTYPE....

Вероятно, это начало страницы 404 error или какой-либо другой страницы ошибки.

Ответ 2

Я не сталкивался с этой проблемой, но ошибка в Googling дает несколько возможных решений:

forum.sun.com - Разработка Java-апплета - Несовместимое магическое значение 1008813135 в файле класса MyApplet

Слава Богу, проблема решена.

Его кеш Java, поэтому решение перейдет на панель управления Java, вкладку "Общие" и в разделе "Временные файлы Интернета" нажмите "Настройки", затем нажмите "Удалить файлы". Попробуйте снова использовать апплет.

"Несовместимое магическое значение 1008813135" Ошибка?

Теперь проблема решена: я узнал, что хост сайта, который я использовал, вообще не поддерживал .jar файлы. Я массово загрузил файлы с помощью своей ftp-программы и не заметил, что он полностью игнорировал файлы .jar.

Ошибки при инициализации java

Хорошо, поэтому это была проблема с настройкой apache, удалила эту строку из моего файла httpd.conf:

# DefaultType application/x-httpd-php

Исправлена ​​проблема.

Ответ 3

Если вы используете защиту Spring или какие-то пользовательские фильтры сервлетов, убедитесь, что местоположение архива или кодовой базы находится в доступе "allowAll". Это было проблемой в моем случае

Ответ 4

Несовместимое магическое число - это первые четыре байта html файла с некоторым сообщением об ошибке, вероятно, сообщение о том, что файл не найден.

Я столкнулся с этим явлением, когда не учитывал чувствительность к регистру в элементе codebase тега апплета. В Windows все хорошо работало, но на используемом мной интернет-сервере работала UNIX, где важна чувствительность к регистру файлов. Реализация проблемы со всеми именами файлов и каталогов в элементах кода и кода была решена.

Ответ 5

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

Итак, я добавил всю зависимую библиотеку вместе с основным апплетом в файле jsp, как показано ниже:

app.archive = '/esense/resources/lib/Applet.jar,/esense/resources/lib/jasypt-1.7.jar,/esense/resources/lib/mysql-connector-java-5.1. 30.jar,/esense/resources/lib/runtime-api-1.0.jar ';

Я также подписал все банку.

Надеюсь, это может сработать в вашем случае.