The shooter was among the dead, state police Cpl. Ralph Striebig said.
There are also a number of wounded, he added.
Three girls, all critical with gunshot wounds, were admitted to Lancaster General Hospital, spokesman John Lines told NBC affiliate WGAL-TV.
WGAL-TV also reported that the shooter was an adult male who had entered the school in rural Lancaster County and and started making threats.
Some people in the Amish community learned about the situation and contacted police, WGAL reported.
Negotiations apparently then took place but at some point at least 10 shots were fired within the school, WGAL said. It appeared the shooter took his own life.
Two hours later, about three dozen people in traditional Amish clothing, hats and bonnets stood near the small school building speaking to one another, several young people and authorities.
At least two ambulances had left the scene, and at least one person was taken on a stretcher to a medical helicopter.
Twenty-seven students are said to have attended the private school, which teaches first through eighth grades.
This happened in Nickel Mines? Dang, that is a very out-of-the way backwater section of Lancaster County - and absolutely gorgeous farm country. I used to drive nearby there on Rt 896 on a long commute - Bart Township is very untouristy, unlike Strasburg or Paradise to the NW. I used to see the kids walking or riding their scooters alongside the road to school - probably might have been that one. Damn, this is horrible.