The Cleveland Cavaliers have come to terms on a three-year, $22 million contract with free agent Kyle Korver, sources told ESPN.com.

In making the deal, the Cavs retain their sharpshooting guard who they traded for last season and are in position to retain the core of the team that reached the Finals. Adding Korver to the team's current payroll would add millions to owner Dan Gilbert's luxury tax bill.

Korver, 36, averaged 10.7 points and shot 49 percent on 3-pointers in 35 regular-season games with the Cavs following a trade from Atlanta last season. His numbers sagged in the postseason, averaging 5.8 points and shooting 39 percent from 3-point range.

The third year of the contract, which can be added to the deal as part of a rule change in the new collective bargaining agreement, is only partially guaranteed, sources said.

The Cavs currently have more than $130 million in committed salaries for next season, which would result in more than $40 million in luxury taxes as the Cavs are into the so-called "repeater tax" penalty program after being a taxpayer for the previous three seasons. To help ease the tax burden, the Cavs have been in trade talks involving Iman Shumpert, sources said, but have been unable to finalize a deal. Shumpert has a player option for the 2018-19 season and has been unwilling to pick up the option to this point as part of a trade, sources said.