Похоже, у членов вашей команды есть отдельные песочницы. Чтобы узнать, является ли их установка устаревшей по отношению к проекту, вам необходимо знать, какие обновления были применены в их песочнице (и, следовательно, какие не были применены).
Глядя на упомянутые вами изменения, вам действительно нужны изменения, примененные к песочнице до сборки, иначе режим сбоя будет непредсказуемым и, возможно, очень загадочным.
Возможно, вы могли бы добавить цель Ant, от которой будет зависеть ваша сборка, которая будет проверять, обновлена ли песочница, и быстро провалится, если нет.
Чтобы решить, актуальна ли песочница, вам нужно сохранить в ней какой-то номер редакции, который обновляется только после того, как член команды обновил его. Как вы упомянули базу данных, как насчет простой таблицы, которая просто хранит число, которое представляет состояние песочницы. Ваша новая цель Ant будет использовать задачу sql , чтобы получить номер ревизии песочницы и сравнить его с номером в дереве исходного кода (вы можете использовать файл, не контролируемый источником, для хранения версии песочницы, если база данных слишком сложный маршрут.) Если они различаются, вы можете повторить сообщение «Ваша песочница нуждается в обновлении, посмотрите файл изменений и примените изменения не новее ${sandbox.date}
». Как только песочница будет обновлена, разработчику потребуется вручную обновить запись в таблице базы данных, чтобы заставить сборку работать.
Я бы настоятельно рекомендовал вам внести в сценарий как можно больше изменений, даже если сценарии обновления выполняются вручную.