1)
Why did troops come from all these nations?
1.
Radak: They were Sheluchim of Nebuchadnetzar. Hashem put in their hearts to come to destroy [Yehoyakim], for he did evil in Hashem's eyes.
2)
When did this occur?
1.
Malbim: It was when Yehoyakim rebelled. The verses explain that it was already decreed in the days of Menasheh.