The boat, flying under a Dutch flag, was at serious risk of sinking due to the size of its cargo, the ministry said yesterday.
It was intercepted on Saturday 92 kilometres southwest of Almeria.
"The drugs took up all the available space" aboard, including on the cabins' beds and floors, the ministry statement said.
The three Dutch crew members, two men and a woman, have been charged with smuggling and endangering public health.
In July, Spanish police seized 15.7 tonnes of hashish resin on a merchant ship near the southern port of Malaga.
The biggest such seizure was in 2013, when 52 tonnes of cannabis were discovered.