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 sex. We prefered to go back to the ship, as soon as we were finished with the Dunn River Falls.