金氧

Maven 插件访问项目类路径

写 Maven 插件的时候可能需要用到项目的类路径,例如插件反射项目的类再做后续处理。

在插件中如何获取项目类路径呢?官方插件(maven-compiler-plugin)为我们做出了示例,点击这里查看其源码。

顺藤摸瓜,有两个点需要注意:

  • @requiresDependencyResolution compile
    意味着在此插件执行前会准备好项目 compile 作用域依赖 作为类路径,取值参见下表:

    system provided compile runtime test
    compile X X X -
    runtime - - X X
    compile+runtime (since Maven 3.0) X X X X
    test X X X X
  • @parameter default-value="${project.compileClasspathElements}
    意味着示例类中的成员属性 classpathElements 将保存 @requiresDependencyResolution 指明的类路径

具体细节请移步:

« 再识 Java 的 final 关键字 SVN 分支更新与合并 »