In the root of hadoop-core.jar is a log4j.properties and a commons-logging.properties
while this provides good standalone functionality to hadoop, it complicates anyone else trying to control the logging, and use the libraries in-process.
In particular, there is a commons-logging.properties file that selects Log4J as the back end. This is not needed as
-log4j is automatically picked up if it is on the classpath
-if it is not on the classpath, asking for it is generally considered bad form
If you look at the commons-logging configuration details:
you will see that that such a properties file takes priority over any setting through system properties, which makes it very hard to override the settings without adding multiple commons-logging.properties files and playing with their priority settings
If you pull the commons-logging.properties file from hadoop-core log4j will still be picked up by default, but it becomes easier for people to turn on different logging infrastructures if they want to. It should have no visible impact on the end user experience (unlike pulling log4j.properties)