Pope Francis spoke on Thursday of the "absurd contradiction" between the international community's calls for peace, the proliferation of the global arms trade and the lack of attention to the suffering of refugees.
"Everyone talks about peace, everyone says they want it but unfortunately the proliferation of all types of arms is leading us in the opposite direction," Francis told a group of new ambassadors to the Holy See.
"It would be an absurd contradiction to talk about peace, negotiate peace and at the same time promote or allow the arms trade," he said at the Vatican ceremony.
Addressing the issue of refugees after the death of 17 asylum-seekers in a shipwreck near Libya on Monday, the pope said: "We can't just chase after emergencies".
Francis: Who Is Pope Francis? Book Reveals the Man
"It is time to confront this issue in a serious and responsible way with a political perspective," he said.
"In a way it is cynical to proclaim human rights and at the same time ignore or fail to care for the men and women forced to leave their homelands who die trying or do not receive international solidarity," he said.
"There are stories that make us cry and shame us about human beings, brothers and sisters... who undertake perilous voyages and undergo kidnapping, torture and all types of suffering, ending up sometimes dead in the desert or at the bottom of the sea," he said.
Immigration rights campaigners estimate that more than 20,000 migrants have died in the Mediterranean Sea trying to reach Italian shores in the last 20 years.
Hundreds of irregular migrants -- most of them Eritrean, Somali and Syrian -- are arriving in Italy on an almost daily basis in what the government has termed an "emergency" that requires European intervention.