Ten office buildings collapsed in the West Java capital of Bandung but there were no reports of fatalities, he said.
The quake struck at 2.55 p.m. (0755 GMT) with its epicentre in the Indian Ocean, 142 km southwest of Tasikmalaya, 30 km beneath the seabed.
The US Geological Survey put the quake's magnitude at 7.4. Reports from several West Java cities and district towns said the powerful quake also cut electricity and telephone lines.
'All the people here panicked. I saw roofs falling down,' Lia Amalia, a visitor at a shopping mall in Bogor, about 60-km south of Jakarta, told detik.com online news service.