Утверждение верно. Идея доказательства такая. Пусть

не компактно. Тогда существует последовательность

, из которой нельзя выбрать сходящуюся в

подпоследовательность. Можно считать, что все

попарно различны. Выбрав достаточно малые радиусы

, можно сделать так, что шары

попарно не пересекаются. Можно проверить, что функция
непрерывна на

.
На самом деле можно построить непрерывную на всём метрическом пространстве

функцию, не принимающую на

наибольшего значения. Если посл-ть

не имеет предельных точек во всём метрическом пространстве, то подойдёт тот же самый пример (только

в определении

и

надо поменять на

). В противном случае пусть

. Тогда подойдёт
P.S. Полнота метрического пространства здесь ни при чём.