TORONTO (AP) -- Jordan Zimmermann took a perfect game into the seventh inning, Christian Stewart hit a two-run homer in the 10th and the Detroit Tigers beat the Toronto Blue Jays 2-0 Thursday on opening day.
Zimmermann, who pitched a no-hitter for Washington on the final day of the 2014 season, came close to bookending it -- Hall of Famer Bob Feller threw the only no-hitter on opening day, for Cleveland in 1940.
This bid ended when Teoscar Hernandez reached on a two-out infield single. Hernandez grounded a 1-2 pitch to the shortstop side of second base. Josh Harrison made a sliding play, but his throw to first was late and wide.
That was the only hit Zimmerman allowed in seven sparkling innings. He struck out four and threw only 70 pitches.
Niko Goodrum doubled off Blue Jays right-hander Daniel Hudson (0-1) to begin the 10th, and Stewart homered to right field on an 0-2 pitch.
Victor Alcantara (1-0) pitched one inning for the win and Shane Greene finished for his first save as Detroit won its opener for the seventh time in eight seasons.
Playing their first game under rookie manager Charlie Montoyo, the Blue Jays lost their eighth consecutive home opener -- tying the third-longest streak in baseball history. Pittsburgh dropped eight straight from 1994-2001, and the Washington Senators did it from 1963-70.
The Brooklyn Dodgers lost a major league-worst 11 straight home openers from 1903-13, and Oakland lost 10 in a row from 2005-14.
Blue Jays right-hander Marcus Stroman walked Harrison, the first batter of the game, on four pitches but didn't allow a hit until a two-out single by Nicholas Castellanos in the sixth. Stroman yielded two hits and walked four in seven scoreless innings.
Playing for the first time since June 2018 after missing most of last season because of a biceps injury, Tigers slugger Miguel Cabrera was hitless in four at-bats. He struck out once and grounded into a double play.
Zimmermann pitched a no-hitter against Miami on Sept. 28, 2014, the first in Nationals history. Outfielder Steven Souza Jr. made a dramatic, diving catch for the final out, retiring Christian Yelich. Souza, who had just entered the game as a defensive replacement, used his bare hand to squeeze the ball in his mitt as he fell.
Feller threw his opening day no-hitter against the Chicago White Sox on April 16, 1940. The Indians won 1-0.
Tigers: OF JaCoby Jones (strained left shoulder) is expected to miss at least the first two weeks of the season. ... RHP Drew Verhagen (right shoulder) is on the 10-day injured list.
Blue Jays: Toronto recalled 1B Rowdy Tellez from Triple-A to take the place of DH Kendrys Morales, who was traded to Oakland on Wednesday. ... Several Blue Jays began the season on the 10-day injured list, including LHP Ryan Borucki (left elbow), RHP Ryan Tepera (right elbow), RHP Clay Buchholz (right flexor strain), RHP David Phelps (elbow surgery) and OF Jonathan Davis (right ankle). OF Dalton Pompey is on the seven-day concussion list. RHP Bud Norris (right forearm) was not healthy in time for opening day. ... The Blue Jays selected the contract of RHP Javy Guerra from the minors.
Tigers: LHP Matthew Boyd went 1-1 with a 5.00 ERA in five spring training starts, striking out 20 batters in 18 innings.
Blue Jays: RHP Matt Shoemaker makes his first start with Toronto after signing as a free agent. He had no record and a 5.00 ERA in five spring outings.