Core has optional dependencies on Jackson (for JSON configuration), Jansi (Windows color support), javax.mail (SMTP appender) and geronimo-jms (JMS appender). These should be called out on the core page. All the others are test dependencies.
What is different? Maybe nothing. IMO, all the "critical" things a user expects should be available without any dependencies. For example, I would hate to have either the FileAppender or RollingFileAppender dependent on anything (I'm not sure the Fast versions are). I'd be a lot happier if Maven had a way to say "this component is optional but if you are using this feature I will include it". IOW, Log4j provides an AsyncLogger feature and project y specifies that it requires that feature. I've wanted a feature like that for years but have never had the time to implement it, nor can it really be implemented without changing the schema for the pom. Ralph On Apr 12, 2013, at 11:53 AM, Scott Deboy wrote: > > This link says there are no dependencies :) Something to fix there? > > http://logging.apache.org/log4j/2.x/dependencies.html > > Of course, the convergence link shows dependencies: > > http://logging.apache.org/log4j/2.x/dependency-convergence.html > > I can't tell which ones are required at runtime for a minimal configuration - > anything? > > If the other dependencies listed are optional at runtime, but available in > core, why would this one be different? > > Scott > > > > On Fri, Apr 12, 2013 at 11:45 AM, Ralph Goers <ralph.go...@dslextreme.com> > wrote: > I'm not sure what you mean, but the guideline I use as to whether something > belongs in core is what dependencies it requires. The functionality it > provides is secondary to me. My preference is for the Log4j API & core to > have as few dependencies as possible. > > Ralph > > > > On Apr 12, 2013, at 9:38 AM, Scott Deboy wrote: > >> I'd like to avoid what we had with log4j 1.x - the receivers/companions >> mess. Whether or something belongs in core or not is a fuzzy judgment call >> sometimes. If possible, I would like to see as much as possible included in >> a single 'release' (that includes 'receivers/companions' if they ever are >> rewritten for log4j2). >> >> >> >> >> >> >> On Fri, Apr 12, 2013 at 9:30 AM, Ralph Goers <ralph.go...@dslextreme.com> >> wrote: >> It probably should be done anyway, but the various components would also >> need to check for the presence of the disruptor and log a warning if it >> isn't there (I believe we do this for Jansi and Jackson) as the disruptor >> would have to be an optional dependency. In the async package it can be >> non-optional so this is less important for anyone using Maven. >> >> Ralph >> >> On Apr 12, 2013, at 9:23 AM, Ralph Goers wrote: >> >>> Because it has a dependency on the Disruptor, which Remko has said may not >>> work on all JDKs >>> >>> Sent from my iPad >>> >>> On Apr 12, 2013, at 8:23 AM, Gary Gregory <garydgreg...@gmail.com> wrote: >>> >>>> Why not more log4j-async into the core? >>>> >>>> Gary >>>> >>>> -- >>>> E-Mail: garydgreg...@gmail.com | ggreg...@apache.org >>>> Java Persistence with Hibernate, Second Edition >>>> JUnit in Action, Second Edition >>>> Spring Batch in Action >>>> Blog: http://garygregory.wordpress.com >>>> Home: http://garygregory.com/ >>>> Tweet! http://twitter.com/GaryGregory >> >> > >