Camden County prosecutors say the shooting happened at 9:41 a.m. Saturday near the intersection of Routes 130 and 168 in Haddon Township.
Authorities say the suspect, a man in his 30s, struggled with the officer and was shot once in the lower body.
The officer was not injured.
The man was taken by ambulance to Cooper University Hospital, treated and released into police custody.
Charges against him were pending.
The officer involved has been placed on administrative leave pending the results of an investigation.
The prosecutor's office will review the shooting, standard procedure in shootings involving police officers.
The Associated Press contributed to this report.