@@ -588,13 +588,13 @@ <h3 id="avaje-inject"><a class="anchor" href="#avaje-inject"></a><a class="link"
588588
589589
590590< div class ="switch "> < div class ="switch--item option-1 selected "> Maven</ div > < div class ="switch--item option-2 "> Gradle</ div > </ div > < div class ="content option-1 ">
591- < pre class ="highlightjs highlight "> < code class ="language-xml hljs " data-lang ="xml " id ="xb6ea3d5d72824148 "> <dependency>
591+ < pre class ="highlightjs highlight "> < code class ="language-xml hljs " data-lang ="xml " id ="xfd29f1492f414ba6 "> <dependency>
592592 <groupId>io.jooby</groupId>
593593 <artifactId>jooby-avaje-inject</artifactId>
594- <version>3.4.2 </version>
595- </dependency></ code > < button class ="clipboard " data-clipboard-target ="#xb6ea3d5d72824148 "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
594+ <version>3.4.3 </version>
595+ </dependency></ code > < button class ="clipboard " data-clipboard-target ="#xfd29f1492f414ba6 "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
596596</ div > < div class ="content hidden option-2 ">
597- < pre class ="highlightjs highlight "> < code class ="language-gradle hljs " data-lang ="gradle " id ="x226974607cc94bc7 "> implementation 'io.jooby:jooby-avaje-inject:3.4.2 '</ code > < button class ="clipboard " data-clipboard-target ="#x226974607cc94bc7 "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
597+ < pre class ="highlightjs highlight "> < code class ="language-gradle hljs " data-lang ="gradle " id ="x8a7caa1f21a74a54 "> implementation 'io.jooby:jooby-avaje-inject:3.4.3 '</ code > < button class ="clipboard " data-clipboard-target ="#x8a7caa1f21a74a54 "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
598598</ div > </ div >
599599
600600< div class ="paragraph ">
@@ -604,14 +604,16 @@ <h3 id="avaje-inject"><a class="anchor" href="#avaje-inject"></a><a class="link"
604604
605605
606606< div class ="switch "> < div class ="switch--item option-1 selected "> Maven</ div > < div class ="switch--item option-2 "> Gradle</ div > </ div > < div class ="content option-1 ">
607- < pre class ="highlightjs highlight "> < code class ="language-xml hljs " data-lang ="xml " id ="x1ae06507084b47a2 "> <build>
607+ < pre class ="highlightjs highlight "> < code class ="language-xml hljs " data-lang ="xml " id ="x4a08ff382b284c51 "> <build>
608608 <plugins>
609609 <plugin>
610610 <groupId>org.apache.maven.plugins</groupId>
611611 <artifactId>maven-compiler-plugin</artifactId>
612612 <version>...</version>
613613 <configuration>
614614 <annotationProcessorPaths>
615+ <!-- if using lombok, it must be placed before the avaje-inject-generator -->
616+ <!-- avaje-inject-generator must be placed before the jooby-apt -->
615617 <path>
616618 <groupId>io.avaje</groupId>
617619 <artifactId>avaje-inject-generator</artifactId>
@@ -621,25 +623,39 @@ <h3 id="avaje-inject"><a class="anchor" href="#avaje-inject"></a><a class="link"
621623 </configuration>
622624 </plugin>
623625 </plugins>
624- </build></ code > < button class ="clipboard " data-clipboard-target ="#x1ae06507084b47a2 "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
626+ </build></ code > < button class ="clipboard " data-clipboard-target ="#x4a08ff382b284c51 "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
625627</ div > < div class ="content hidden option-2 ">
626- < pre class ="highlightjs highlight "> < code class ="language-kotlin hljs " data-lang ="kotlin " id ="xd7ffe3dd8984674 "> plugins {
628+ < pre class ="highlightjs highlight "> < code class ="language-kotlin hljs " data-lang ="kotlin " id ="x8018b32b040b4999 "> plugins {
627629 id "org.jetbrains.kotlin.kapt" version "1.9.10"
628630}
629631
630632dependencies {
631633 kapt 'io.avaje:avaje-inject-generator:{avaje.inject.version}'
632- }</ code > < button class ="clipboard " data-clipboard-target ="#xd7ffe3dd8984674 "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
634+ }</ code > < button class ="clipboard " data-clipboard-target ="#x8018b32b040b4999 "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
633635</ div > </ div >
634636
637+ < div class ="admonitionblock note ">
638+ < table >
639+ < tbody > < tr >
640+ < td class ="icon ">
641+ < i class ="fa icon-note " title ="Note "> </ i >
642+ </ td >
643+ < td class ="content ">
644+ < div class ="paragraph ">
645+ < p > Please note that the order of annotation processors is important. For example, if you’re using < code > lombok</ code > and < code > avaje-inject</ code > , the correct order should be: < code > lombok</ code > → < code > avaje-inject</ code > → < code > jooby-apt</ code > </ p >
646+ </ div >
647+ </ td >
648+ </ tr >
649+ </ tbody > </ table >
650+ </ div >
635651< div class ="paragraph ">
636652< p > 3) Install Avaje Inject:</ p >
637653</ div >
638654< div class ="listingblock primary ">
639655< div class ="title "> Installing Avaje Inject</ div >
640656
641657< div class ="switch "> < div class ="switch--item option-1 selected "> Java</ div > < div class ="switch--item option-2 "> Kotlin</ div > </ div > < div class ="content option-1 ">
642- < pre class ="highlightjs highlight "> < code class ="language-java hljs " data-lang ="java " id ="x2c65f33f9c3c40e0 "> public class App extends Jooby {
658+ < pre class ="highlightjs highlight "> < code class ="language-java hljs " data-lang ="java " id ="xacd5d6c950704cf4 "> public class App extends Jooby {
643659
644660 {
645661 install(AvajeInjectModule.of()); < i class ="conum " data-value ="1 "> </ i > < b > (1)</ b >
@@ -653,9 +669,9 @@ <h3 id="avaje-inject"><a class="anchor" href="#avaje-inject"></a><a class="link"
653669 public static void main(String[] args) {
654670 runApp(args, App::new);
655671 }
656- }</ code > < button class ="clipboard " data-clipboard-target ="#x2c65f33f9c3c40e0 "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
672+ }</ code > < button class ="clipboard " data-clipboard-target ="#xacd5d6c950704cf4 "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
657673</ div > < div class ="content hidden option-2 ">
658- < pre class ="highlightjs highlight "> < code class ="language-kotlin hljs " data-lang ="kotlin " id ="x3ca7faa05d9c4c37 "> fun main(args: Array<String>) {
674+ < pre class ="highlightjs highlight "> < code class ="language-kotlin hljs " data-lang ="kotlin " id ="xdfab0b5fd3c140ae "> fun main(args: Array<String>) {
659675 runApp(args) {
660676 install(AvajeInjectModule.of()) < i class ="conum " data-value ="1 "> </ i > < b > (1)</ b >
661677
@@ -664,7 +680,7 @@ <h3 id="avaje-inject"><a class="anchor" href="#avaje-inject"></a><a class="link"
664680 service.doSomething()
665681 }
666682 }
667- }</ code > < button class ="clipboard " data-clipboard-target ="#x3ca7faa05d9c4c37 "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
683+ }</ code > < button class ="clipboard " data-clipboard-target ="#xdfab0b5fd3c140ae "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
668684</ div > </ div >
669685
670686< div class ="colist arabic ">
@@ -687,27 +703,27 @@ <h4 id="avaje-inject-property-injection"><a class="anchor" href="#avaje-inject-p
687703< div class ="listingblock ">
688704< div class ="title "> application.conf</ div >
689705< div class ="content ">
690- < pre class ="highlightjs highlight "> < code class ="language-bash hljs " data-lang ="bash " id ="x455ebe7c4a454ec4 "> currency = USD</ code > < button class ="clipboard " data-clipboard-target ="#x455ebe7c4a454ec4 "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
706+ < pre class ="highlightjs highlight "> < code class ="language-bash hljs " data-lang ="bash " id ="xa5c81e2620ee4571 "> currency = USD</ code > < button class ="clipboard " data-clipboard-target ="#xa5c81e2620ee4571 "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
691707</ div >
692708</ div >
693709< div class ="listingblock primary ">
694710
695711
696712< div class ="switch "> < div class ="switch--item option-1 selected "> Java</ div > < div class ="switch--item option-2 "> Kotlin</ div > </ div > < div class ="content option-1 ">
697- < pre class ="highlightjs highlight "> < code class ="language-java hljs " data-lang ="java " id ="xf186f27f35f74d68 "> @Singleton
713+ < pre class ="highlightjs highlight "> < code class ="language-java hljs " data-lang ="java " id ="xc4e3dbeb83cf4743 "> @Singleton
698714public class BillingService {
699715
700716 @Inject
701717 public BillingService(@External @Named("currency") String currency) {
702718 ...
703719 }
704720
705- }</ code > < button class ="clipboard " data-clipboard-target ="#xf186f27f35f74d68 "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
721+ }</ code > < button class ="clipboard " data-clipboard-target ="#xc4e3dbeb83cf4743 "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
706722</ div > < div class ="content hidden option-2 ">
707- < pre class ="highlightjs highlight "> < code class ="language-kotlin hljs " data-lang ="kotlin " id ="x8a1ebdd34a044438 "> @Singleton
723+ < pre class ="highlightjs highlight "> < code class ="language-kotlin hljs " data-lang ="kotlin " id ="x91946bf44d0240b0 "> @Singleton
708724class BillingService @Inject constructor(@External @Named("currency") currency: String) {
709725 ...
710- }</ code > < button class ="clipboard " data-clipboard-target ="#x8a1ebdd34a044438 "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
726+ }</ code > < button class ="clipboard " data-clipboard-target ="#x91946bf44d0240b0 "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
711727</ div > </ div >
712728
713729</ div >
@@ -720,7 +736,7 @@ <h4 id="avaje-inject-mvc-routes"><a class="anchor" href="#avaje-inject-mvc-route
720736< div class ="title "> MVC and Avaje Inject</ div >
721737
722738< div class ="switch "> < div class ="switch--item option-1 selected "> Java</ div > < div class ="switch--item option-2 "> Kotlin</ div > </ div > < div class ="content option-1 ">
723- < pre class ="highlightjs highlight "> < code class ="language-java hljs " data-lang ="java " id ="x69078774897541b7 "> public class App extends Jooby {
739+ < pre class ="highlightjs highlight "> < code class ="language-java hljs " data-lang ="java " id ="xac608693e5824411 "> public class App extends Jooby {
724740
725741 {
726742 install(AvajeInjectModule.of()); < i class ="conum " data-value ="1 "> </ i > < b > (1)</ b >
@@ -731,15 +747,15 @@ <h4 id="avaje-inject-mvc-routes"><a class="anchor" href="#avaje-inject-mvc-route
731747 public static void main(String[] args) {
732748 runApp(args, App::new);
733749 }
734- }</ code > < button class ="clipboard " data-clipboard-target ="#x69078774897541b7 "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
750+ }</ code > < button class ="clipboard " data-clipboard-target ="#xac608693e5824411 "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
735751</ div > < div class ="content hidden option-2 ">
736- < pre class ="highlightjs highlight "> < code class ="language-kotlin hljs " data-lang ="kotlin " id ="xaed435378c6f43d4 "> fun main(args: Array<String>) {
752+ < pre class ="highlightjs highlight "> < code class ="language-kotlin hljs " data-lang ="kotlin " id ="xde22199394c047ed "> fun main(args: Array<String>) {
737753 runApp(args) {
738754 install(AvajeInjectModule.of()) < i class ="conum " data-value ="1 "> </ i > < b > (1)</ b >
739755
740756 mvc(MyController::class) < i class ="conum " data-value ="2 "> </ i > < b > (2)</ b >
741757 }
742- }</ code > < button class ="clipboard " data-clipboard-target ="#xaed435378c6f43d4 "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
758+ }</ code > < button class ="clipboard " data-clipboard-target ="#xde22199394c047ed "> < img src ="/images/clippy.svg " class ="clippy " width ="13 " alt ="Copy to clipboard "> </ button > </ pre >
743759</ div > </ div >
744760
745761< div class ="colist arabic ">
0 commit comments