D 的个人博客

全职做开源,自由职业者

  menu

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 X
  • @parameter default-value="${project.compileClasspathElements}
    意味着示例类中的成员属性 classpathElements 将保存 @requiresDependencyResolution 指明的类路径

具体细节请移步: