Мне просто интересно, как контейнер выбирает, какой пакет загрузить класс, если один и тот же пакет экспортируется несколько раз разными пакетами.
Учитывая следующее, что верно. Обратите внимание, что в списке также указан фактический порядок развертывания пакетов.
- package.x версия 1 (A)
- package.x версия 2 (B)
- package.x версия 3 (C)
Если добавлен 4-й комплект, и для него требуется 'package.x.SomeClass' 1-2, откуда он будет выбран?
- Случайно ли он выбирается из A или B?
- Не удается развернуть B из-за столкновения?
- Он выбирает А, потому что он был первым?
Все ли контейнеры выполняют одну и ту же функцию или поведение разных популярных пакетов отличается?