Robert, that's deprecated! What to use instead? Or was it deprecated in
error?

https://github.com/apache/maven/blob/master/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/Log.java






On Sat, 23 Jan 2021, 12:10 Robert Scholte, <[email protected]> wrote:

> See
> https://maven.apache.org/ref/3.6.3/maven-plugin-api/apidocs/org/apache/maven/plugin/AbstractMojo.html
>
> You can get the logger by calling getLog(), so don't inject the logger
> here.
>
> Robert
> On 22-1-2021 19:19:47, Slawomir Jaranowski <[email protected]> wrote:
> It is not only an extension case.
>
> For example I can write Mojo like:
>
> @Mojo(name = "example")
> public class ExampleMojo extends AbstractMojo {
>
> @Inject
> private MyService myService;
>
> @Override
> public void execute() {
> }
> }
>
> and
>
> @Named
> public class MyService {
>
> @Inject
> private Logger??? logger;
> }
>
> So the question is what logger we should use in the component?
>
> Another case is that components can be Singleton and their instance will be
> created once.
>
>
> pt., 22 sty 2021 o 12:36 Romain Manni-Bucau
> napisał(a):
>
> > Do it means if we represent our classloading structure, all loaders on
> top
> > of mojo use slf4j and others our maven abstraction.
> > Sounds ok to me except for extensions which are not in maven land so
> > subject to slf4j api breaking changes and undefined/ambiguous context -
> > which is never true for maven code itself since we guarantee and own it.
> > Should we promote the abstraction for extensions too?
> >
> > Le ven. 22 janv. 2021 à 11:41, Robert Scholte a
> > écrit :
> >
> > > I'm not so sure about this, it probably depends on the context.
> > >
> > > I think we should assume that JSR330 component are not aware of their
> > > context.
> > > They should not require a Maven context, hence in such case it makes
> > sense
> > > to use SLF4J API, while the application selects the logger
> > implementation.
> > > Think of Maven Extensions. I'd say they should be using the SLF4J API
> > > because their context is not bound to 1 plugin.
> > >
> > > thanks,
> > > Robert
> > > On 18-1-2021 09:34:01, Romain Manni-Bucau wrote:
> > > Generally you want to propagate the mojo logger to have consistent logs
> > but
> > > worse case we should promote mojo logging api as injectable at
> injection
> > > points if needed, avoids all the mess you can get in mojo with loggers
> to
> > > respect that rule of dumb IMHO.
> > >
> > > Le dim. 17 janv. 2021 à 22:48, Slawomir Jaranowski
> > > a écrit :
> > >
> > > > Hi,
> > > >
> > > > We can use the JSR-330 component for developing maven plugins -
> > > > https://maven.apache.org/maven-jsr330.html
> > > >
> > > > There is not clear how to access logging api from JSR-330 component.
> > As I
> > > > found out last time, maven plugins should not directly use slf4j-api,
> > so
> > > > what is recommended in this case.
> > > >
> > > > --
> > > > Sławomir Jaranowski
> > > >
> > >
> >
>
>
> --
> Sławomir Jaranowski
>

Reply via email to