The U.S. National Hurricane Center said Ernesto still could grow into a hurricane as it swirled along a course forecast to take it over the coastal resorts of Mexico's Yucatan Peninsula by Wednesday.
With forecasters predicting possible rains of up to three to six inches in Jamaica, long lines formed at grocery stores in the island's capital of Kingston as people bought water, bread and canned goods.
"We're going to have heavy rains, so I'm stocking up," said Marco Brown, a Kingston resident in his late 50s.
The Jamaican government ordered fishermen on outlying cays to evacuate and head to the main island. The storm was expected to pass close to Pedro Cays on Sunday evening, according to the local Meteorological Service Office.
The storm swirled over the islands at the Caribbean's eastern entrance on Friday. Dominica closed its airport for two days, and St. Lucia ordered shops to close for several hours, but no damage or flooding was reported on islands affected by the storm.
The U.S. hurricane center said Ernesto had maximum sustained winds of about 60 mph (95 kph) late Saturday. It was about 325 miles (525 kilometers) east-southeast of Kingston, Jamaica, and was moving westward at 22 mph (35 kph).