Dear all,
I have a bunch of loosely related class files that I distrubute in a single 
jar.  So, for instance I have Foo.java and Bar.java, where there is not 
top-level init() for the library.  I also want to use log4j to replace the 
antiquated not-quite-logging system that is in this code.  I'm wondering what's 
the best-practice way to do this.

>From what I can see, it's best to create a ProjectLogger with a static 
>initialiser

public class ProjectLogger {
  static {
    Logger logger = Logger.getLogger(ProjectLogger.class.getName());
    BasicConfigurator.configure();
  }

  static void doInit() {}
}

Then importing this into each of Foo.java and Bar.java.

Foo.java:

import ProjectLogger;

pubilc class Foo {
  static {
     ProjectLogger.doInit();
     Logger logger = Logger.getLogger(Foo.class.getName());
  }

...
}

and so forth.

This is not pretty as you need the ProjectLogger.init() in each file.  However, 
does this concur with best practice?  Or is it a bit insane?

-- 
Aidan

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to