Never heard about a visa for Jamaica. And the price for that is more than a visa for Russia or China.
Ask your Cruiseline about it, I´m not sure about it. And Ochos Rios is not worth the 100 US Dollars. If you really need a visa, I see no problem when you stay onboard while other passengers make their tours in Ochos Rios.
BTW, I did not like it, to many people asking, if you want to buy drugs or if you want ***. We prefered to go back to the ship, as soon as we were finished with the Dunn River Falls.