In your program, Hadoop is using reflection and it can not guess any parameters to feed.
You should provide an empty default constructor in your key class.
So just add the default constructor:
Whenever you get errors like this for classes which are writable, mappers, reducers, etc.
If the class is an inner class, and not defined as static, then first make them static.
In your code Mapper and reducer, classes need to be defined statically.
public static class MaxTemperatureMapper extends Mapper<....
public static class MaxTemperatureReducer extends Reducer<....
If you want more knowledge regarding Hadoop, refer to the following video: