【问题标题】:Creating a Custom Gradle task of type msbuild创建 msbuild 类型的自定义 Gradle 任务
【发布时间】:2017-07-20 15:45:37
【问题描述】:

我正在跑步

gradle 4.0.1

groovy 2.4.11

JVM 1.8.0_131

我正在尝试创建一个自定义任务来执行两个不同的 Visual Studio 解决方案。我有 abc.sln 和 xyz.sln,我想要一个 gradle 脚本,它可以调用这两种解决方案中的任何一种来构建。

buildscript 
{
    repositories 
    {
        jcenter()
        mavenCentral()
    }
    dependencies 
    {
        classpath "com.ullink.gradle:gradle-msbuild-plugin:2.9"
    }
}

msbuild { 
    group = "Custom"

    solutionFile = 'abc.sln'
    projectName = project.name
    configuration = 'Debug'
    //verbosity = 'detailed' 
    targets = ['Clean', 'Rebuild']
}

apply plugin 'msbuild'

我还想做另一个任务

task msbuild2 (type: msbuild) {
    group = "Custom"

    solutionFile = 'xyz.sln'
    projectName = project.name
    configuration = 'Release'
    //verbosity = 'detailed' 
    targets = ['Clean', 'Rebuild']
}

但是我得到了错误:

出了什么问题:评估根项目“Windows”时出现问题。

com.ullink.Msbuild_Decorated 不能转换为 java.lang.Class

关于如何创建 msbuild 类型的自定义任务有什么想法吗?

【问题讨论】:

    标签: gradle msbuild


    【解决方案1】:

    您必须在此处通过其类名传递任务类型。班级名称是com.ullink.Msbuild。所以你可以这样做

    import com.ullink.Msbuild
    
    task myMsBuild(type:Msbuild){
        ...
        ...
    }
    

    task myMsBuild(type: com.ullink.Msbuild){
        ...
        ...
    }
    

    顺便说一句:区分大小写在这里很重要!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-05-14
      • 1970-01-01
      • 2023-03-17
      • 2012-10-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多