title: Quarkus / CDI and "java config" DI definitions
body: <p>I just started a quarkus proof of concept.  The containers-start time is amazing!</p>
  
  <p>Right now, I'm working on the Dependency Injection part.  And figuring out the options.</p>
  
  <p><a href="https://quarkus.io/blog/quarkus-dependency-injection/" rel="nofollow noreferrer">https://quarkus.io/blog/quarkus-dependency-injection/</a></p>
  
  <p>My preferences are:</p>
  
  <p>I prefer constructor injection.  (This has been going ok).</p>
  
  <p>I prefer "java config" so I can follow the "Composition Root" pattern of putting all my application dependency injections in a common place.  (See <a href="https://blog.ploeh.dk/2011/07/28/CompositionRoot/" rel="nofollow noreferrer">https://blog.ploeh.dk/2011/07/28/CompositionRoot/</a> )</p>
  
  <p>With Spring DI, this is done with the </p>
  
  <blockquote>
    <p>org.springframework.context.annotation.Configuration</p>
  </blockquote>
  
  <p>and declaring the Beans there.</p>
  
  <p>Aka, I prefer not to place "@ApplicationScoped" annotations all over my classes.</p>
  
  <p>Does CDI/Quarkus support a "java config" model?  The reason I ask about quarkus is that I read quarkus has a limited CDI implementation.</p>
  
  <blockquote>
    <p>//start quote//Our primary goal was to implement a supersonic
    build-time oriented DI solution compatible with CDI. This would allow
    users to continue using CDI in their applications but also leverage
    Quarkus build-time optimizations. However, ArC is not a full CDI
    implementation verified by the TCK - see also the list of supported
    features and the list of limitations.//end quote</p>
  </blockquote>
  
  <p>So my question isn't a solely CDI question.</p>
  
  <p>I've tried different internet search terms, but they keep showing me Spring links.  :(</p>