The shooting happened around 2:30 p.m. Monday on Little Blue Trace Trail, near Independence in Jackson County.
The active-duty soldier was home on leave from Fort Riley, Kan., and wearing his Army running gear when he was attacked.
Jackson County authorities say a man approached the soldier on the trail, demanding a bag he was carrying.
The man got the bag and the soldier was shot in the leg when he tried to run away.
The soldier's injuries are not considered life threatening. His assailant was still at large Monday night.