U-SQL 项目 CI 构建失败

U-SQL project CI build Failed

我在 VS-2017 中有包含多个项目的解决方案。其中一个是 U-SQL 项目,另一个是 Class 库(对于 U-SQL 应用程序)项目。 但是出现构建错误 "MSBUILD : error MSB1008: Only one project can be specified."

首先,请确保u-sql项目迁移到支持MSBuild

关于迁移的详细信息,您可以参考博客Continuous integration made easy with MSBuild support for U-SQL (preview)

然后,正确使用 MSBuild 参数,如下所示:

/p:USQLSDKPath=$(Build.SourcesDirectory)\path\to\Microsoft.Azure.DataLake.USQL.SDK.1.version\build\runtime /p:USQLTargetType=SyntaxCheck /p:DataRoot=$(Build.SourcesDirectory)\usqlproject

比如多个项目的文件结构如下:

root repo
    |___UsqlProj
           |___UsqlProj.sln
           |___UsqlProj
                   |___UsqlProj.usqlproj
                   |___...
           |___ClassLibrary1
                   |___...
           |___ClassLibrary2
                   |___...
           |___...

那么你应该起诉 MSbuild 参数:

/p:USQLSDKPath=$(Build.SourcesDirectory)\UsqlProj\packages\Microsoft.Azure.DataLake.USQL.SDK.1.3.1019-preview\build\runtime /p:USQLTargetType=SyntaxCheck /p:DataRoot=$(Build.SourcesDirectory)\UsqlProj