C
cap
Both of them has a class named "Logger"
I used to include Log4r in my code so I can use Logger as a shortcut of
Log4r::Logger .
It works ok when useing "Logger[name]" to get logger
Today I add the library "bluecloth" to my application. I found that
when requiring bluecloth,BlueCloth required 'logger' in its
"bluecloth.rb", So Ruby's internal Logger class overwrite the
Log4r::Logger in context, and doing 'include Log4r' again didn't make
the Logger turn back. The Logger is always ruby's internal Logger and
mine "Logger[name]' can't execute now (maybe the priority of "include
Log4r" is less than "require 'logger' ?")
Is there any solution except replacing every "Logger" to
"Log4r::Logger" in my code?
I used to include Log4r in my code so I can use Logger as a shortcut of
Log4r::Logger .
It works ok when useing "Logger[name]" to get logger
Today I add the library "bluecloth" to my application. I found that
when requiring bluecloth,BlueCloth required 'logger' in its
"bluecloth.rb", So Ruby's internal Logger class overwrite the
Log4r::Logger in context, and doing 'include Log4r' again didn't make
the Logger turn back. The Logger is always ruby's internal Logger and
mine "Logger[name]' can't execute now (maybe the priority of "include
Log4r" is less than "require 'logger' ?")
Is there any solution except replacing every "Logger" to
"Log4r::Logger" in my code?