Вариант использования у вас в порядке. Я полагаю, что лучшая практика, рекомендуемая людьми Maven, заключается в том, что после загрузки SAR-версии JAR-файла в общий репозиторий вы должны прекратить рассматривать его как SNAPSHOT, а не как выпуск.
Это имеет смысл, потому что вы хотите, чтобы люди зависели от этой конкретной версии этого артефакта . Артефакт не находится в активной разработке и не ожидается произвольного изменения в любой момент времени, и по этой причине его следует рассматривать как выпуск. Только тот, которому вы даете свое собственное причудливое имя, и тот, который кто-то другой считал СНИМОК.
Когда вы спрашиваете о зависимости foo-0.5.0-SNAPSHOT, я не верю, что Maven ищет foo-0.5.0-. Я считаю, что он буквально ищет foo-0.5.0-SNAPSHOT в репозитории, и поэтому вы его не находите. (Не уверен на 100% в этом, поскольку мы не ставим метки времени в наших SNAPSHOTS. Мы просто постоянно перезаписываем банки -SNAPSHOT новыми версиями по мере их создания.)
Итак, поместите foo-0.5.0-20090612.124.jar в свой сторонний репозиторий (который должен содержать выпуски только по вышеуказанной причине). Затем в вашем pom явным образом обращайтесь к «выпущенному» артефакту foo-0.5.0-20090612.124, и все должно работать нормально.