2017-05-25 5 views
1

これは、これらの質問のためのフォローです:ロンボク注釈を処理するためにkaptの設定

kaptは以来、進化してきた今では、さえのMavenでサポートされているようです。私はこの(configにロンボク島の注釈プロセッサを注意してください)しようとしています:

 <plugin> 
      <groupId>org.jetbrains.kotlin</groupId> 
      <artifactId>kotlin-maven-plugin</artifactId> 
      <version>${kotlin.version}</version> 
      <executions> 
       <execution> 
        <id>kapt</id> 
        <goals> 
         <goal>kapt</goal> 
        </goals> 
        <configuration> 
         <sourceDirs> 
          <sourceDir>${project.basedir}/src/main/java</sourceDir> 
          <sourceDir>${project.basedir}/src/main/kotlin</sourceDir> 
         </sourceDirs> 
         <annotationProcessors> 
          <annotationProcessor>lombok.core.AnnotationProcessor</annotationProcessor> 
         </annotationProcessors> 
        </configuration> 
       </execution> 
       ... 
     </plugin> 

をしかし、まだ関連の問題で説明したように何も影響し、ロンボク@Getterはまだ無視されていない持っているようです。

何かできることはありますか?

答えて

1

あなたはKotlinクラスにロンボクの注釈を使用したいのであれば、これは動作するはずです:

<execution> 
    <id>kapt</id> 
    <goals> 
     <goal>kapt</goal> 
    </goals> 
    <configuration> 
     <sourceDirs> 
      <sourceDir>src/main/kotlin</sourceDir> 
      <sourceDir>src/main/java</sourceDir> 
     </sourceDirs> 
     <annotationProcessors> 
      <annotationProcessor>lombok.launch.AnnotationProcessorHider$AnnotationProcessor</annotationProcessor> 
     </annotationProcessors> 
     <annotationProcessorPaths> 
      <annotationProcessorPath> 
       <groupId>org.projectlombok</groupId> 
       <artifactId>lombok</artifactId> 
       <version>${lombok.version}</version> 
      </annotationProcessorPath> 
     </annotationProcessorPaths> 
    </configuration> 
</execution> 

あなたはKotlinコードでロンボククラスを使用する必要がある場合、あなたはdelombok使用する必要があります。

<plugin> 
    <groupId>org.projectlombok</groupId> 
    <artifactId>lombok-maven-plugin</artifactId> 
    <version>${lombok.version}.0</version> 
    <executions> 
     <execution> 
      <id>delombok</id> 
      <phase>generate-sources</phase> 
      <goals> 
       <goal>delombok</goal> 
      </goals> 
      <configuration> 
       <formatPreferences> 
        <javaLangAsFQN>skip</javaLangAsFQN> 
       </formatPreferences> 
       <verbose>true</verbose> 
      </configuration> 
     </execution> 
     <execution> 
      <id>test-delombok</id> 
      <phase>generate-test-sources</phase> 
      <goals> 
       <goal>testDelombok</goal> 
      </goals> 
      <configuration> 
       <verbose>true</verbose> 
      </configuration> 
     </execution> 
    </executions> 
</plugin> 

この場合、kaptはまったく必要ありません。私の魅力のように動作します。

+0

残念ながら、それは役に立たなかった。 IntelliJ Ideaと同様に、 'mvn compile'と同じです。 :/ –

+0

kotlinクラスでロンボクの注釈を使用しようとするなら、このことはうまくいくはずです。あなたがktにロンボクのクラスをインポートしようとしているなら - あなたはdelombokする必要があります。私は両方のケースで自分の答えを更新しました。 –

関連する問題