Celebrities often find it hard to keep anything secret but Captain America star Anthony Mackie has managed to get married without anyone knowing for six months.

The 36-year-old is said to have tied the knot with his longtime girlfriend Sheletta Chapital in December 2014 with a small ceremony reportedly taking place at the Hard Rock Hotel and Casino in Punta Cana, Dominican Republic.

According to the New York Post's Page Six, the Avengers actor was filming upcoming movie Our Brand is Crisis alongside actress Sandra Bullock when he flew Chapital over to the island for their top-secret nuptials.

Around 150 of the couple's close friends and family are said to have watched the sweethearts exchange vows, with a source who was in attendance telling the website: "It was low-key and super-relaxed.

"They had a welcome dinner. We golfed and drank. They went on a honeymoon soon after."

There was speculation that the couple, who are parents to a six-year-old son, had walked down the aisle after the bride changed her name to Chapital Mackie on Facebook.

The couple have been dating since they were just seven years old after meeting at school in their hometown of New Orleans.

Opening up about their first meeting, Mackie said on the Queen Latifah Show in 2014: "It was funny. I was coming from a very bad school and going to a very good school. And when I walked into second grade it was Dr. Seuss Day, and we had the little hot plate out and the teacher was making green eggs and ham.

"So I walk in and I looked and I see this little girl with these ratty pigtails and skinny legs, and I was like 'WOW!'"

After a brief split, the Hollywood star reconciled with Chapital in 2009 while he was rebuilding homes shortly after starring in Oscar-winning movie The Hurt Locker.