在Gradle插件中获取项目源目录

时间:2015-04-17 16:46:51

标签: java plugins gradle

首先对不起,如果我在某处的文档中错过了这个。

我试图用Java编写Gradle插件。

更具体地说,我需要这样做:

public class MyPlugin implements Plugin<Project>{

    @Override
    public void apply(Project project) {
        project.getSourceDir();
    }
}

换句话说,如果可能的话,我怎样才能获得运行我的插件的项目源的目录?

我的假设是正确的,当调用apply方法时,Gradle已经知道了源的位置,这个位置不能进一步改变吗?

感谢。

2 个答案:

答案 0 :(得分:1)

是的,因为插件是根据您的参数应用于项目的。如果你&#34;申请&#34;它到两个项目然后它创建插件的两个实例并将您的项目对象传递给apply方法。

答案 1 :(得分:0)

查看Gradle用户指南。

项目有一个&#34; sourceSet&#34;的列表您可以使用&#34; project.sourceSets&#34;来实现这些对象。每个sourceSet都有一组属性。

浏览The DSL reference以查看可用的属性非常方便。寻找&#34; SourceSet&#34;。