Maine signed a minor league contract with the Boston Red Sox on January 27, 2012. He also received an invitation to spring training. Maine was released on May 10, 2012. On May 25, 2012, John Maine signed with the Yankees to a minor-league deal, and assigned him to extended spring training. Maine was signed to the Scranton-Wilkes Barre Yankees roster on June 12 and made his first appearance in regular season game play in nearly a year that evening. Initially scheduled to start, he instead picked up in the 2nd inning after a spot-start by the rehabbing David Robertson. Throwing 65 pitches (37 for strikes) in three innings of work, he struck out four, walked two, and gave up three runs (two earned) while recording a win for the Yankees. On December 24, 2012 he signed a minor league contract with the Miami Marlins that contained an invitation to spring training. He made the opening day roster and was designated for assignment on April 19, 2013. He was subsequently released afterwards. On August 25, 2014, the Charlotte 49ers baseball team announced that Maine would join the staff of his alma mater as a volunteer assistant.