У нас есть приложение весенней загрузки, построенное как сборка .war (сборка Maven), которое развертывается на сервере с помощью простой команды java -jar.
Как часть CI / CD,тот же код строится на Дженкинс.Сервер Jenkins - это CentOS, а целевой сервер развертывания - RedHat.Файл .war, созданный на Jenkins, завершается с ошибкой разрешения циклической зависимости Spring Beans, в то время как тот же код при сборке на локальном (Mac OS) или на сервере RedHat работает нормально.
Я попытался просмотреть файл war для каждой зависимости, и все выглядит одинаково, за исключением jsp-api-2.1 jar.Jsp-api-2.1.jar, включенный в .war, построенный на Jenkins, имеет значение Created-By: 1.5.0_06-b04 в MANIFEST.MF, в то время как jsp-api-2.1.jar, включенный в .war, основан на локальных (MacO) илина Redhat Создано: 1.5.0_04-b05 в MANIFEST.MF.Кроме этого, все остальные зависимости одинаковы.
Размеры военных файлов немного отличаются, однако я не смог найти никакой разницы, кроме упомянутой выше.
Ошибка, которую мы получаемна Jenkins встроенный jar ниже:
Description:
The dependencies of some of the beans in the application context form a cycle:
| Class A
↑ ↓
| Class B
└─────┘
Генерирует ли Maven какие-либо файлы, специфичные для ОС, или зависимости, загруженные из репозитория, специфичны для ОС?
Я не могу думать ни о чем, как офайлы .war выглядят похоже.Любая информация по этому вопросу будет полезна.