Nobody seems to be having much fun this offseason, so let's take a break from the endless Bryce Harper and Manny Machado speculation and repeat an exercise we tried around this time the past two years: our annual way-too-early All-Star teams.

Last year, I successfully slated J.D. Martinez to start at DH for the American League! I picked Blake Snell as a breakout and all he did was win the Cy Young Award! I went out on the limb with Javier Baez and he finished second in the MVP voting. I also had Eric Hosmer returning to the Royals and winning the fan vote as the AL starter.

Oops.

Remember the rules: 32-man rosters (20 position players, 12 pitchers) and at least one rep for each team. The projected starters are in bold. And don't forget to factor in Harper and Machado ...

National League

Yadier Molina will get to celebrate an All-Star starting assignment this season. Jeff Curry/USA TODAY Sports

Catcher

Yadier Molina, Cardinals; J.T. Realmuto, Reds; Willson Contreras, Cubs

Molina, a nine-time All-Star, hasn't started the All-Star Game since 2013 but gets voted back in this season. He's now 36 but continues to show remarkable durability and is coming off a 20-homer, Gold Glove season. Note that I have Realmuto with the Reds rather than Marlins, as those trade rumors have picked up a lot of steam in recent days.

Notably absent: six-time All-Star Buster Posey, who has started three of the past four All-Star Games for the NL (Contreras started last year). Posey had season-ending hip surgery in late August to repair a torn labrum and infringement. Doctors also discovered a microfracture during the surgery. The injuries reportedly prevented Posey from firing his hips as he swung, so the hope is that he returns healthy and with more power.

First base

Paul Goldschmidt, Cardinals; Anthony Rizzo, Cubs; Freddie Freeman, Braves

Goldschmidt recovered from a slow start to finish sixth in the MVP voting and should once again be an MVP candidate on his new team. Rizzo also got off to a wretched start, hitting .149 with one home run in April before hitting .329 in the second half. Steady Freddie has averaged 5.7 WAR the past three seasons.

Beyond those three, National League first base is so deep that you could comfortably list nine or 10 guys over the best first baseman in the American League. I left off Joey Votto, who led the NL with a .417 OBP but hit just 12 home runs. Rhys Hoskins moves back to his natural position and I expect him to improve on his .246/.354/496, 34-homer sophomore campaign. Heck, Daniel Murphy, now with the Rockies, could hit .350 and win the batting title and rank as the ninth- or 10th-best player at the position depending on how you feel about Max Muncy, Jesus Aguilar, Brandon Belt or even Mets rookie Peter Alonso.

Second base

Robinson Cano, Mets; Ozzie Albies, Braves

The widely ignored facet of the Mets-Mariners trade: Cano can still play, hitting .303/.374/.471 with Seattle. It's not a deep group at second base, so he has a chance to earn his first starting gig since 2014 (he was also an All-Star in 2016 and 2017). Albies burst out of the gate last season and finished with an impressive 69 extra-base hits as a 21-year-old. Pitchers figured him out in the second half, however, as he tailed off to .226/.282/.342, so he'll need to better balance his aggressive approach with a little better pitch selection to return to the All-Star Game.

Third base

Nolan Arenado, Rockies; Manny Machado, Phillies; Josh Donaldson, Braves

This is the most loaded position in the majors -- and that's even before predicting that Machado lands with the Phillies. Arenado has started the past two All-Star Games, Machado should enjoy a fifth straight 30-homer season if he lands in Philly and I like Donaldson coming out strong and signing a long-term extension with the Braves in June. Other candidates include Kris Bryant (coming off a shoulder injury), Anthony Rendon (who somehow has never been an All-Star), Eugenio Suarez (an All-Star last season), Matt Carpenter (moving back to third on a full-time basis), Justin Turner (who only leads the NL in wRC+ over the past two seasons) and Travis Shaw (63 home runs the past two seasons).

Whether he plays shortstop or second base doesn't matter -- Javier Baez is an All-Star. Nam Y. Huh/AP

Shortstop

Javier Baez, Cubs; Trevor Story, Rockies

Baez will start out at shortstop while Addison Russell serves a 40-game suspension for violating MLB's domestic violence policy but could move back to second once Russell returns. We'll slot Baez at shortstop and make him an All-Star, although it will be interesting to see if he can repeat the .290/.326/.554 line that helped place him second in the MVP voting. He's a unique player: It's basically impossible to put up that line with 167 strikeouts and just 29 walks, but Baez makes it work with amazing bat speed. Imagine what he could do with a little better discipline, considering he hit .189 on pitches outside the zone (and swung 44 percent of the time on pitches out of the zone).

Story reduced his strikeout rate from 34.4 percent to 25.6 percent and his numbers shot up across the board, as he led the NL with 85 extra-base hits and produced 5.6 WAR. He adds value on the bases, is a solid defender and gets the nod here over Corey Seager (coming off Tommy John surgery), burner Trea Turner, Brandon Crawford (last year's starter) and Jean Segura, who joins the Phillies after an All-Star season with Seattle.

Outfield

Bryce Harper, Padres; Christian Yelich, Brewers; Ronald Acuña Jr., Braves; Juan Soto, Nationals; Cody Bellinger, Dodgers; Yasiel Puig, Reds; Brian Anderson, Marlins

Last year's NL outfield starters included Matt Kemp and Nick Markakis. No offense to those two fine veterans, but I like the younger star power to take over this season. First, one likely holdover, albeit in a new uniform: That's right, Harper to the Padres is going to happen and he makes my way-too-early squad as the lone San Diego representative. He'll be joined by 2018 MVP winner Yelich, who will prove his monster second half was no fluke, and super soph sensation Acuña, who hit .322/.403/.625 in the second half. Can you say 2019 MVP?

Then again ... maybe the 2019 MVP will be Soto, a hitting savant who produced a .923 OPS as a 19-year-old rookie. Yes, he's that good. I like Bellinger to bounce back after his numbers dipped a bit from his rookie season. With Muncy at first base, look for Bellinger to get a lot more time in the outfield. As he showed in the playoffs, he's a plus defender in center, although he might move to right field to clear room for A.J. Pollock. I can see Puig either sinking or shining in Cincinnati. For some reason, he has struggled against lefties the past two seasons. If he can improve in that area, he can return to his first All-Star Game since 2014. Anderson had a solid rookie season and makes our squad as the Marlins' rep.

Inside Luke Hagerty's comeback He's 37 and throwing 99. Baseball's best comeback story will be playing out during spring training. Jeff Passan »

Starting pitchers

Jacob deGrom, Mets; Max Scherzer, Nationals; Aaron Nola, Phillies; Walker Buehler, Dodgers; Jameson Taillon, Pirates; German Marquez, Rockies; Robbie Ray, Diamondbacks; Madison Bumgarner, Giants

None of the first four names should be a surprise, as the first three went 1-2-3 in the Cy Young voting. The fourth name isn't Clayton Kershaw (who missed the All-Star Game last season for the first time since 2010) but teammate Buehler, a rising star who went 8-5 with a 2.62 ERA as a rookie. You saw his electric stuff and deep arsenal of pitches in the postseason, and his .193 average allowed ranked fourth best in the majors among pitchers with at least 100 innings.

Taillon had an under-the-radar season with the Pirates, going 14-10 with a 3.20 ERA over 191 innings, including a 2.33 ERA in the second half as he continued to improve his command and strikeout-to-walk ratio. With Taillon, Trevor Williams and full seasons from Chris Archer and Joe Musgrove, the Pirates have a chance to surprise (albeit in a tough division). Kyle Freeland had the big season for the Rockies in 2018, but I like Marquez as their ace in 2019 after a season in which he had 230 strikeouts in 196 innings. He was as good as any pitcher in the second half thanks to an improved curveball to add to his fastball/wipeout slider combo.

Ray was an All-Star in 2017 and I predicted big things for him in 2018. It didn't happen, but I'm predicting big things again in 2019. Maybe it will happen this time! Bumgarner is still on the Giants and we need a Giants rep, although I don't know if he'll still be with them after the All-Star break.

Relief pitchers

Edwin Diaz, Mets; Josh Hader, Brewers; Felipe Vazquez, Pirates; Sean Doolittle, Nationals

All I have to say: Good luck against the bullpen. The notable missing name is Kenley Jansen, an All-Star the past three seasons. He's supposed to be fine after offseason heart surgery, but the 13 home runs he allowed in 71 2/3 innings -- and two more big ones in the World Series -- are of concern.

American League

Catcher

Salvador Perez, Royals; Gary Sanchez, Yankees

So here's a big problem in selecting the AL team compared to the NL: You get 20 position players, but since the AL selects two designated hitters, they have just two "free" spots remaining compared to four for the NL. Throw in the mandatory requirement of one player per team and sometimes those two free spots get spoken for, so players at a loaded position have a harder time making it. Then if you select three catchers, as is usually the case, the roster is even more crowded.

My solution: two catchers! Perez has started the past five All-Star Games -- and that, to be honest, is more an indictment of the AL catching crop for half a decade now than a stamp on Perez's own greatness. I mean, he hasn't had an OBP above .300 since 2013. In fact, only 14 players have batted at least 499 times in a season and had more seasons with an OBP under .300 (including longtime Royals teammate Alcides Escobar, who has had seven). Perez is going for his sixth in a row.

First base

Jose Abreu, White Sox; Matt Olson, A's

If the AL catching situation isn't bleak enough for you, we turn to first base. The All-Stars last season were Abreu and Mitch Moreland. The year before, Justin Smoak and Yonder Alonso. Can we import a couple of guys from the NL for the game?

Jose Altuve will enjoy another year as the starting second baseman for the American League. Billie Weiss/Boston Red Sox/Getty Images

Second base

Jose Altuve, Astros; Whit Merrifield, Royals

Altuve is already a six-time All-Star and looks like an easy call to start for the fifth straight time. Despite playing through a knee issue last season, he hit .316/.386/.451 (but just .276 in the second half). Look for a rebound in his numbers. Merrifield is one of the more surprising success stories in recent seasons, developing into a terrific all-around player who led AL second basemen in WAR in 2018. His competition for backup has thinned, as Cano, Jed Lowrie and Brian Dozier all switched leagues.

Third base

Alex Bregman, Astros; Jose Ramirez, Indians; Vladimir Guerrero Jr., Blue Jays

It's a tough call leaving Oakland's Matt Chapman off the team, but Bregman's emerging status as one of the faces of the game makes him a potential starter with Ramirez -- third in the MVP voting each of the past two seasons -- a solid bet to make his third straight team. Chapman is a defensive whiz and I'm buying the improvement at the plate, but he gets squeezed by wunderkind Vladdy Jr., who will get called up a week into the season and won't stop hitting for the next 15 years. He makes it as the Blue Jays' lone rep and as one of the biggest stories of the first half.

Shortstop

Francisco Lindor, Indians; Carlos Correa, Astros

Can Lindor take yet another step forward? I think it's possible. His OPS has gone from .794 to .842 to .871 but there was a glaring hole in his record: He feasted on bad pitching and struggled against good pitching. Against sub-.500 opponents (like the rest of his division), he hit .302/.375/.579 with 31 home runs in 104 games. Against winning teams, he hit .226/.303/.396 with seven home runs in 54 games.

Correa had a disappointing, injury-riddled season as his OPS fell more than 200 points. Let's hope for a healthy season and the resulting big numbers that will make him an All-Star over Andrelton Simmons, Xander Bogaerts and Gleyber Torres, who I expect to get more action at shortstop for the Yankees than Troy Tulowitzki.

Outfield

Mike Trout, Angels; Mookie Betts, Red Sox; Aaron Judge, Yankees; Mitch Haniger, Mariners; Andrew Benintendi, Red Sox; Tommy Pham, Rays; Nicholas Castellanos, Tigers

I'll take the first three to repeat as the starting trio. Nothing too controversial in those selections. If you want a non-Trout, non-Betts choice for MVP, don't sleep on Judge, who was hitting .285/.398/.548 when he went down on July 26 and didn't return until mid-September. (How scary will the Yankees be if Judge, Sanchez and Giancarlo Stanton all produce closer to their 2017 numbers than 2018?)

Haniger is the only Mariner here, but he makes it on merit after hitting .286/.366/.493 with 26 home runs and good defense in 2018. He made the All-Star team last year and is capable of another 6.1-WAR season. There's a reason Jerry Dipoto held on to Haniger during his offseason dumping frenzy. Benintendi is never going to be a big home run masher, but I forecast better than a .290 average and 16 home runs, especially if he can improve against lefties. Pham is a personal favorite. He started red-hot in April with the Cardinals, fell into a deep slump (under .200 in May and June) that led to his exile from St. Louis, and then tore it up in 39 games for the Rays (.343/.448/.622).

Quick, can you name the Tigers' All-Star rep last year? No, you can't. It was middle reliever Joe Jimenez, who finished with a 4.31 ERA. A dramatic comeback from Miguel Cabrera would be nice, but we'll go with the hard-hitting Castellanos as this year's rep.

Designated hitter

J.D. Martinez, Red Sox; Giancarlo Stanton, Yankees

Nelson Cruz is a possibility here and Shin-Soo Choo was an All-Star last season. Then we have Shohei Ohtani, who will DH exclusively this year but won't be ready for Opening Day (although the Angels haven't otherwise given a timetable for his return). Oh, and don't forget Khris Davis: All he has done is hit the most home runs in the majors over the past three seasons with 133 -- nine more than Stanton and 14 more than Cruz.

Trevor Bauer has a great shot of starting in front of the home fans at Progressive Field. Tim Warner/Getty Images

Starting pitchers

Trevor Bauer, Indians; Gerrit Cole, Astros; Justin Verlander, Astros; Corey Kluber, Indians; Blake Snell, Rays; James Paxton, Yankees; Jose Berrios, Twins; Josh James, Astros

Let's start off with the glaring omission: Chris Sale, who has started the past three All-Star Games, which is pretty awesome (Lefty Gomez and Robin Roberts are the only others to start three in a row). Sale was obviously not 100 percent down the stretch and in the postseason last season after missing time in August and September with a sore shoulder. It seems likely that the Red Sox will ramp him up slowly this spring and limit his innings as much as possible early in the season.

Even without Sale, the AL is loaded with starting pitching depth. The first five were All-Stars last season and joined Sale as the top six vote-getters in the Cy Young voting. Snell was the winner over Verlander after going 21-5 with a 1.89 ERA, with the only knock against him is that he clocked just 180 2/3 innings. He's unlikely to repeat one of the most insane stats of 2018: Batters hit .088 against him (10-for-114) with runners in scoring position. OK, so maybe that means he won't post a sub-2.00 ERA again, but he's the real deal.

Paxton makes it over teammate Luis Severino, who struggled in the second half after pitching like a Cy Young winner in the first half. Berrios returns as the Twins' rep, as he was in 2018. Then my big shocker: Astros rookie James, who came out of nowhere to have a dominant minor league season with his upper-90s heat (that hit 100 when he pitched out of the bullpen in the majors). He's not even guaranteed a job in the rotation, but I think he wins it (and rookie All-Star starters aren't an anomaly). Since 2011, we've had Michael Pineda, Lance Lynn, Wade Miley, Yu Darvish, Jose Fernandez and Masahiro Tanaka.

Relief pitchers

Blake Treinen, A's; Jose Leclerc, Rangers; Adam Ottavino, Yankees; Mychal Givens, Orioles

It's hard to leave off Treinen after he crushed opponents last year with 100 K's in 80 1/3 innings, just two home runs allowed and a 0.78 ERA. Leclerc quietly was one of the best relievers in the majors last season, holding batters to a .126 average -- tied with Craig Kimbrel's 2012 for the second-lowest mark ever for a pitcher (minimum 50 innings), behind only Aroldis Chapman's .121 mark in 2014.

Speaking of Chapman, he still could make it again. So could Dellin Betances, Zach Britton or Chad Green. I went with Ottavino because a guy who can dominate hitters in Colorado could be unhittable at sea level. And, saving the best for last, we have to pick somebody from the Orioles. Givens has been a workhorse the past three seasons for Baltimore and should take over as the closer ... although those save opportunities are likely to be few and far between.