Hi Matt I don't have any experience with Guice but do with Dagger 2. I did try and understand the differences but there wasn't a lot of guidance on how to use it within Jenkins so I started to implement the Dagger 2 alternative. It worked in the IDE in the sense that it compiled correctly and tests that I had written in Java to exercise the functionality of my plugin also work.
> As for running an annotation processor in a plugin, isn't that how @MetaInfService, @Indexed, @Restricted, and the like, are handled at compile time? Errr...... pass. I don't know about these. Are you saying I should use these instead or that I am OK to use an annotation processor as these are examples of where ones are already in use? For some clarity Dagger 2 uses a compile time annotation processor to generate code. Hope that helps and thanks. On Wednesday, 11 September 2019 20:22:31 UTC+1, Matt Sicker wrote: > > Jenkins bundles Guice for dependency injection, though due to some > historical API decisions, it's not that easy to use in practice. As > for running an annotation processor in a plugin, isn't that how > @MetaInfService, @Indexed, @Restricted, and the like, are handled at > compile time? > > On Wed, Sep 11, 2019 at 2:17 PM Mez Pahlan <[email protected] > <javascript:>> wrote: > > > > Thanks for the answers Jesse! > > > > > Try specifically: mvn clean hpi:run > > > > Same issue. Builds fine no obvious errors in the terminal output and > Jenkins starts normally. Plugin is listed in the list of installed plugins > but I cannot use it in a Pipeline or Freestyle job. > > > > > Why? This would be extremely unusual. > > > > I'm using Dagger 2 for dependency injection because 1) I'm used to using > it in other Java projects 2) whilst I've been developing the plugin in the > IDE it just worked 3) I am not aware of any banned / incompatible Java > libraries that we must not use (but obviously I am happy to be corrected on > this). > > > > Any further tips on attempting to track down the cause of this? > > > > On Wednesday, 11 September 2019 14:38:04 UTC+1, Jesse Glick wrote: > >> > >> On Wed, Sep 11, 2019 at 3:20 AM Mez Pahlan <[email protected]> wrote: > >> > I've looked at the local work directory in my IDE that is created > when hpi:run is executed and I can see a file called appcenter.hpl but > there isn't an expanded folder called appcenter in the way that other > plugins have expanded folders. > >> > >> This is normal. The link file points to source directories rather than > >> needing an archive to be unpacked. > >> > >> > I have also tried running the mvn hpi:run command from outside of the > IDE and I get the same issue. > >> > >> Try specifically > >> > >> mvn clean hpi:run > >> > >> > I've added an annotation processor in my POM > >> > >> Why? This would be extremely unusual. > > > > -- > > You received this message because you are subscribed to the Google > Groups "Jenkins Developers" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to [email protected] <javascript:>. > > To view this discussion on the web visit > https://groups.google.com/d/msgid/jenkinsci-dev/c413ae0c-d0eb-4d56-8698-f6eae88664a8%40googlegroups.com. > > > > > > -- > Matt Sicker > Senior Software Engineer, CloudBees > -- You received this message because you are subscribed to the Google Groups "Jenkins Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/c73d39dd-8474-414e-a1d3-6f9c3a440868%40googlegroups.com.
