繁体   English   中英

如何将 arguments 传递给 maven 中的 annotationProcessor

[英]How do I pass arguments to the annotationProcessor in maven

例如

使用 kotlin-kapt

kapt {
    arguments {
        arg("key", "value")
    }
}

或使用 annotationProcessor

defaultConfig {
   javaCompileOptions {
      annotationProcessorOptions {
         arguments = [ key : 'value' ]
      }
   }
}

当我使用 Maven 并重建时

<plugin>                                                                               
    <groupId>org.apache.maven.plugins</groupId>                                        
    <artifactId>maven-compiler-plugin</artifactId>                                     
    <version>3.6.1</version>                                                           
    <configuration>                                                                    
        <source>1.8</source>                                                           
        <target>1.8</target>                                                           
        <annotationProcessorPaths>                                                     
            <path>                                                                     
                <groupId>org.greenrobot</groupId>                                      
                <artifactId>eventbus-annotation-processor</artifactId>                 
                <version>3.2.0</version>                                               
            </path>                                                                    
        </annotationProcessorPaths>                                                    
                                                                                       
        <annotationProcessors>                                                         
            <annotationProcessor>                                                      
                org.greenrobot.eventbus.annotationprocessor.EventBusAnnotationProcessor
            </annotationProcessor>                                                     
        </annotationProcessors>                                                        
                                                                                       
        <fork>true</fork>                                                              
        <compilerArgs>                                                                 
            <compilerArg>-eventBusIndex=com.example.test.MyEventBusIndex</compilerArg> 
        </compilerArgs>                                                                
    </configuration>                                                                   
</plugin>                                                                              

出现以下错误

Error:java: Invalid mark: -eventBusIndex=com.example.test.MyEventBusIndex

看了Maven-compiler-plugin和KAPT的官方文档,还是没有找到答案

https://maven.apache.org/plugins/maven-compiler-plugin/compile-mojo.html#compilerArgument

https://www.kotlincn.net/docs/reference/kapt.html#%E5%9C%A8-maven-%E4%B8%AD%E4%BD%BF%E7%94%A8

您是否尝试将它们添加到 maven 插件部分下?

<configuration>
    ...
    <compilerArgs>
        <compilerArg>-Key=value</compilerArg>
    </compilerArgs>
<configuration>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM