The 26-year-old has also played for MLS sides Houston Dynamo and Toronto FC.
“This is another great opportunity for me and a step in the right direction,” said James.
“I am very happy to be with a team that has been consistently successful throughout the years I have been with this league.”