Scala mllib 2.2.0 k means. Number of runs As per the documentation here, the runs parameter does nothing.
I have looked at the actual Scala code for k means and it appears that the train method only does one start. There is no way to change this.

QUESTION:
Am I correct that if I want 5 starts I need to write my own code that calls train 5 times (or until some criteria has been met)?
That's correct. It used to control making multiple starts at once but for various reasons this didn't work well, and was deprecated / made a no-op. I removed it for Spark 3.0.