Not sure. But I can see the keyword static appearing frequently. Why? I always work on the assumption that any sue of static must have a good explanation, otherwise it is a mistake.
You should move nearly all that code out of the
main method into instance methods. Your use of static would imply that you only have one camp anywhere, but instance methods would permit multiple camps.
Why have you used on demand import for java.io and imported one class from java.util by name. Prefer single imports to on demand. I can see you opening Scanners but I can't see you closing them.
Why have you made your compareTo method so complicated, when you are only comparing the
String field? You can simplify that no end. What happens if you get two people with the same name and different ages?
You cannot pass a file to the camper constructor because you specified three arguments. You have to read name age gender from your file and pass those individually.