Verse 17 said that they will keep alive Rachav, because she hid the Meraglim. Why does it say here that the Meraglim will keep her alive, and verse 25 says that Yehoshua kept her alive, because she hid the Meraglim?
Radak (25) #1: Yehoshua commanded that they guard the Shevu'ah that the spies swore to her.
Radak (25) #2: He gave to her what to live on, i.e. money, or an inheritance. This is why it says that she was "b'Kerev Yisrael." This is the correct Perush.
Radak #3: Some (Megilah 14b) expound that Yehoshua married her. This is called keeping her alive, for since people saw that he married her, great Yisraelim clung (married) to her father's house.
Malbim (22,25): The Meraglim are obligated to go to save her, for they swore to her. They must do according to the details and conditions of the Shevu'ah. Yehoshua was not obligated to guard their Shevu'ah; even so, he did extra for her