在gradle脚本中调用java函数

在gradle脚本中调用java函数,gradle,build.gradle,Gradle,Build.gradle,我有一个java类,它执行某种功能,其中一个函数返回一些我需要在gradle脚本中使用的东西,以设置项目属性。 我通过创建项目的工件来实现它,并通过将其添加到类路径中来使用该工件,从而使我能够访问该类和函数。 buildscript { repositories { jcenter() maven{ url 'http:localhost:8081/artifactory/temp' } } dependencies { classp

我有一个java类,它执行某种功能,其中一个函数返回一些我需要在gradle脚本中使用的东西,以设置项目属性。
我通过创建项目的工件来实现它,并通过将其添加到类路径中来使用该工件,从而使我能够访问该类和函数。

buildscript {
  repositories {
    jcenter()
    maven{
      url 'http:localhost:8081/artifactory/temp'
    }
  }

  dependencies { 
    classpath "utility:sampleutility:1.0"
  }
}

import com.polsys.utility.MyUtil
dependencies {
    compile 'org.slf4j:slf4j-api:1.7.13'
    compile 'HRP:'+new MyUtil().callMe()+':1.0'
    //callme function returns the name of artifact. 
    testCompile 'junit:junit:4.12'
}

现在,我已经通过上面提到的方法实现了它,即创建工件,将该工件添加到类路径中,然后导入类并使用函数。这是我调用当前项目函数的方法吗?所以我可以将工件中可用的功能合并到当前项目中

简单的方法是将Java/Groovy代码放在
buildSrc
dir下。Gradle将编译它,您将能够从构建脚本中调用此代码。检查和相关文档。

要使java代码可用于gradle脚本,您需要将java代码放在下面给出的目录层次结构下:

  • ProjectRootDirectory
    • buildSrc
      • src
        • 主要
          • groovy/java
            • YourPackages(在我的例子中是java包和类)

这是gradle脚本查找外部插件的路径。现在,您可以将类导入并访问到gradle脚本中(您不会出现“无法解决类”错误)。

谢谢Radim此链接对我的问题非常有帮助