about8.blogspot.com, Вы сказали
, если равняется (), возвращает true для двух объектов, то хэш-код () должен возвратить то же значение. Если равняется (), возвращает false, то хэш-код () должен возвратить различные значения
, я не могу согласиться с Вами. Если два объекта имеют тот же хэш-код, это не должно означать, что они равны.
, Если A равняется B тогда, A.hashcode должен быть равен B.hascode
, но
, если A.hashcode равняется B.hascode, это не означает, что Необходимость равняется B
Война - это веб-приложение. Если вы хотите, чтобы консольное / автономное приложение повторно использовало те же классы, что и ваше веб-приложение, подумайте о том, чтобы упаковать ваши общие классы в jar-файл, который вы можете поместить в WEB-INF / lib
. Затем используйте эту банку из командной строки.
Таким образом, вы получаете оба консольных приложения и можете использовать одни и те же классы в своих сервлетах, не создавая двух разных пакетов.
Это, конечно, верно, когда война разразилась.
Правила размещения классов в архивном файле заключаются в том, что расположение объявления пакета файла и расположение файла в архиве должны совпадать. Поскольку ваш класс находится в WEB-INF / classes, он считает, что класс недопустим для запуска в текущем контексте.
Единственный способ сделать то, о чем вы просите, - это переупаковать войну так, чтобы Файл .class
находится в каталоге mypackage
в корне архива, а не в каталоге WEB-INF / classes. Однако, если вы сделаете это, вы больше не сможете получить доступ к файлу ни из одного из ваших веб-классов.
Если вы хотите повторно использовать этот класс как в войне, так и вне его из командной строки java, подумайте о создании исполняемого файла jar можно запустить из командной строки,
Что ж, согласно Википедии , с файлом WAR классы, которые загружаются в путь к классам, находятся в папке " / WEB-INF / classes »и каталог« / WEB-INF / lib ».
Вы можете попробовать просто поместить копию классов в корневую файловую систему zip-файла (что и есть war / jar). Я не уверен, что это сработает.
Вы всегда можете создать два отдельных файла.