Bowers, 25, has been a major disappointment ever since the Buccaneers used a second-round pick on him back in 2010. He has missed nine games in the past two years with injuries and has been largely ineffective when healthy.
On top of that, the NFL suspended Bowers two games for violating the league’s policy on performance-enhancing substances.
Tampa Bay elected to bring him back one-year deal this past July and moved him to defensive tackle. However, he was among their final roster cuts at the start of the season.
In 2014, Bowers appeared in 11 games and recorded 21 tackles, 1.5 sacks, a fumble recovery and a pass defense for the Buccaneers.
James, 25, was taken in the second-round of the 2012 draft, but was unable to carve out a role with the 49ers. The Dolphins later added him to their practice squad a few days after he was waived by San Francisco.
Miami wound up promoting James him to their active roster just in early September before waiving him to make room for RB Raheem Mostert.
Last year, the 49ers had James active for just 10 games, which had a lot to do with him being slotted as the No. 4 running back on their depth chart. James wound up playing just 28 snaps this season and totaled 59 yards on 12 carries.