INT всегда будет 4 байта независимо от того, какая длина указана.
Длина просто указывает, сколько символов отображать при выборе данных с помощью клиента командной строки mysql.
... и максимальное значение будет 2147483647 (Подпись) или 4294967295 (Без знака )
Есть еще одно решение, которое также работает.
Это работает, потому что у вас есть несколько классов в разных файлах JAR. Удаление и повторное добавление JRE Lib Lib сделает правильные классы первыми. Если вы хотите, чтобы фундаментальное решение убедитесь, что вы исключите файлы JAR с одинаковыми классами.
Для меня у меня есть: javax.xml.soap.soappart
в трех разных банках: Axis-Saaj-1.4.jar
, Saaj-API-1.3.jar
и RT.JAR
Я предполагаю, что вы пытаетесь заменить стандартный класс, поставляемый с Java 5, на один из имеющейся у вас библиотеки.
Это запрещено условиями лицензионного соглашения, однако, AFAIK это не применялось до Java 5.
Я видел это с QName раньше, и я "исправил" это, удалив класс из банка, который у меня был.
EDIT http://www.manpagez.com/man/1/java/ примечания к параметру "-Xbootclasspath:"
"Приложения, использующие этот параметр с целью переопределения класса в rt. jar не следует развертывать, поскольку это противоречит лицензии на двоичный код Java 2 Runtime Environment ".
http://www.idt.mdh.se/rc/sumo/aJile/Uppackat/jre/LICENSE
«Ограничения технологии Java. Вы не можете изменять Java Интерфейс платформы («JPI», обозначаемый как классы, содержащие внутри пакета "java" или любых подпакетов пакета "java" package), создав дополнительные классы в JPI или иным образом вызывая добавление или изменение классы в JPI. Если вы создаете дополнительный класс и связанный API, который (i) расширяет функциональность платформы Java, и (ii) предоставляется сторонним разработчикам программного обеспечения с целью разработка дополнительного программного обеспечения, которое вызывает такие дополнительный API, вы должны незамедлительно опубликовать широко точная спецификация такого API для бесплатного использования всеми Разработчики. Вы не можете создавать или авторизовать свои лицензиатов на создание дополнительных классов, интерфейсов или подпакеты, которые каким-либо образом идентифицированы как "java", "javax", "солнце" или аналогичное соглашение, указанное Sun в любое условное обозначение. "
Я столкнулся с той же проблемой. Я нашел ответ на сайте: http://www.17ext.com .
Сначала удалите системные библиотеки JRE. Затем снова импортируйте системные библиотеки JRE.
Не знаю почему. Однако он устранил мою проблему, надеюсь, это поможет вам.
http://www.digizol.com/2008/09/eclipse-access-Restriction-on-library.html работал лучше для меня.
В Windows: Windows -> Настройки -> Java -> компилятор -> Ошибки / предупреждения -> Устаревший и ограниченный API -> Запрещенная ссылка (правила доступа): -> Изменение на предупреждение
на Mac OS X / Linux: Eclipse -> Настройки -> Java -> компилятор -> Ошибки / предупреждения -> Устаревшие и ограниченный API -> Запрещенная ссылка (правила доступа): -> Изменить на предупреждение
Windows -> Preferences -> Java Compiler