Глобальная библиотека доступна для всех проектов, вы добавляете ее один раз и повторно используете в других проектах и модулях.
Библиотека проекта может использоваться, если у вас есть несколько модулей в одном проекте, которым нужна эта библиотека, чтобы вам не приходилось определять ее в каждом модуле. Обновление содержимого библиотеки в одном месте проще, чем в каждом модуле.
Зависимость модуля используется, если библиотека нужна только в этом конкретном модуле.
Технически нет никакой разницы, все библиотеки, присутствующие в зависимостях модуля, просто добавляются в путь к классам.
Если вы не используете Maven / Gradle / Ivy / SBT в проекте, возможно, вы захотите сохранить файлы jar внутри проекта, например, в каталоге lib
.
Чтобы использовать файлы jar в веб-приложении, они также должны быть включены в артефакт , который вы развертываете на сервере.