Mystery solved!

A Florida woman confirmed yesterday that her long-lost son is the bearded drifter charged with stashing guns and ammo in a South Street storage locker.

Alicia “Jamie” O’Donnell said seeing photos of James O’Donnell Jr. on The Post’s Web site was her “biggest, greatest Christmas present” this year.

“I didn’t know if he was dead or alive,” she said by phone from her apartment in Cape Canaveral, Fla.

The 61-year-old hospital nurse hasn’t laid eyes on her eldest child since he stormed out of his parents’ home after a fight about 15 years ago.

She declined to say what touched him off, calling it a “personal matter.”

James O’Donnell Jr., 39, has been held on $4 million bail since cops arrested him in the East Village in March and tied him to a cache of weapons, including two loaded pistols and more than 300 bullets.

A source yesterday told The Post that he was carrying “anti-Bloomberg paraphernalia” along with the huge dagger cops allegedly saw sticking out of his backpack.

At a court hearing last week, Manhattan Supreme Court Justice Lewis Stone refused to reduce O’Donnell’s bail, calling him an “ethereal figure” after prosecutors said they couldn’t confirm his ID and he refused to submit to DNA testing.

Jamie O’Donnell said James Jr., who has a younger brother, Mark, was born in Newton, Mass., on March, 9, 1971, the birth date under which he’s booked at Rikers Island.

The family moved to Florida when James Jr. was nine, and he graduated from St. Cloud High School, she said, describing him as a “really, really intelligent” boy who was interested in computers and comedy.

After graduation, James Jr. traveled to Germany to live with a young woman he met while she was in the U.S. as an exchange student, but their relationship didn’t work out.

He remained in Europe — including a stay in Amsterdam — for about seven years before returning home, living with his parents for about six months before the blow-up.

No one in his family knew anything about his whereabouts until The Post contacted one of his cousins last week.

Jamie O’Donnell said “I would love to see him if he’s willing to see us,” and was working on a letter to send him.

“It’s just hard to figure out exactly what I want to say,” she said. “I’ve ripped up several.”

She said she might be willing to help post his bail if it was lowered, but also called him a “high flight risk,” noting that he would likely “take off” if released.

A spokeswoman for the Manhattan DA’s Office declined to say why authorities never contacted O’Donnell’s family, citing an “ongoing investigation” into his case.

Defense lawyer Howard Simmons didn’t return a call for comment.

Additional reporting by Larry Celona.