The incident took place at Lloyd Gymnasium, a grammar school in Bremerhaven, a city in Germany.
One person has been seriously injured.
The police were called after a student heard shots being fired.
The girl, who was in the bathroom at the time, contacted the emergency services.
Forces are currently searching the school.
Meanwhile, upper school students are still in their classrooms and have barricaded themselves in.
A suspected perpetrator has been arrested and a second is thought to be on the run with a crossbow.
Officers are currently searching the school.
People have been urged to avoid the surrounding area.
Providing an update, Bremerhaven Police said: “There is currently a major #police operation in the city centre of Bremerhaven, a city in Germany.
“Details will be announced by the #Bremerhaven police later.
“Please avoid the Bgm.-Martin-Donandt square and the surrounding streets.”
Additional reporting by Monika Pallenberg.
UPDATES TO FOLLOW…