Cruz Bay, St. John, USVI: This is a tender only port that some smaller ships visit. Virtually none of the large main-stream cruise ships visit here, so you have to take a ferry from St. Thomas to reach St. John. For cruise ships that dock in Charlotte Amalie, the best way to visit St. John is to either take a ship-sponsored excursion (with ferry service from the cruise terminal), or if you go on your own - a taxi drive to the Red Hook Ferry Terminal on the east side of St. Thomas.
However, due to the logistics in getting there, taking a ship-sponsored excursion to St. John is highly recommended - at least for the first trip.
St. John lies 4 miles east of St. Thomas, and has been called the "Emerald of the Caribbean". In 1956, Laurance Rockefeller donated most of the land he had acquired on the island to the United States' National Park Service. As a result, some 60% of the island is a national park.
St. John is said to have the 2nd best beach in the world - Trunk Bay, and it certainly seems to be worthy of that distinction. The trip to this beach alone is worth the effort to get to St. John.
There is a bit of shopping in Cruz Bay - the ferry drop off point, but St. John does not have the major jewelry and clothing chain stores that the other Caribbean islands have, so shopping should not be the primary activity for the trip to St. John.