与MSbuild for U-SQL进行持续集成的项目中不存在目标“生成”

与MSbuild for U-SQL进行持续集成的项目中不存在目标“生成”,msbuild,azure-devops,azure-data-lake,u-sql,Msbuild,Azure Devops,Azure Data Lake,U Sql,我正在使用MSBuild for U-SQL引用链接与VST进行持续集成: 但在使用VSTS构建服务器时,我面临以下问题 验证解决方案配置: 构建解决方案配置调试|任何CPU。 ADLAUSQL1\ADLAUSQL1.usqlproj0,0:错误MSB4057:项目中不存在目标生成。 项目D:\a\1\s\ADLAUSQL1.sln 1正在节点1默认目标上生成D:\a\1\s\ADLAUSQL1\ADLAUSQL1.usqlproj 2。 D:\a\1\s\ADLAUSQL1\ADLAUSQL1

我正在使用MSBuild for U-SQL引用链接与VST进行持续集成:

但在使用VSTS构建服务器时,我面临以下问题

验证解决方案配置: 构建解决方案配置调试|任何CPU。 ADLAUSQL1\ADLAUSQL1.usqlproj0,0:错误MSB4057:项目中不存在目标生成。 项目D:\a\1\s\ADLAUSQL1.sln 1正在节点1默认目标上生成D:\a\1\s\ADLAUSQL1\ADLAUSQL1.usqlproj 2。 D:\a\1\s\ADLAUSQL1\ADLAUSQL1.usqlproj:错误MSB4057:项目中不存在目标生成。 已完成生成项目D:\a\1\s\ADLAUSQL1\ADLAUSQL1.usqlproj默认目标-失败。 已完成生成项目D:\a\1\s\ADLAUSQL1.sln默认目标-失败。 生成失败。 D:\a\1\s\ADLAUSQL1.sln默认目标1-> D:\a\1\s\ADLAUSQL1\ADLAUSQL1.usqlproj默认目标2-> D:\a\1\s\ADLAUSQL1\ADLAUSQL1.usqlproj:错误MSB4057:项目中不存在目标生成。 0警告 1错误

我的生成参数是-/p:USQLSDKPath=$build.SourcesDirectory/usqlmbuild/packages/Microsoft.Azure.DataLake.USQL.SDK.1.3.180223/build/runtime/p:USQLTargetType=SyntaxCheck/p:DataRoot=$build.SourcesDirectory


任何帮助都将不胜感激。如果您需要任何进一步的信息,请告诉我

要解决此问题,请检查以下方面:

usql项目可以在msbuild成功的情况下生成 首先,您应该确保您的项目能够在本地机器上成功构建。然后内置VST

检查MSBuild参数

假设回购协议中的项目结构如下:

root repo
    |___ADLAUSQL1.sln
    |___ADLAUSQL1
           |___ADLAUSQL1.usqlproj
           |___...
然后,您应该将USQLSDKPath指定为$Build.SourcesDirectory/ADLAUSQL1/packages/Microsoft.Azure.DataLake.USQL.SDK.1.3.180223/Build/runtime

注意:Microsoft.Azure.DataLake.USQL.SDK.1.3.180223表示您在项目中安装了软件包Microsoft.Azure.DataLake.USQL.SDK的1.3.180223版本

正确选择项目的VS版本

并确保使用正确的VS版本进行构建。由于您使用的是hosted agent,请根据您的要求选择hosted agent或hosted VS2017 agent:

如果要使用VS2015构建项目,应选择Hosted agent。 如果要使用VS2017构建项目,则应使用托管的VS2017代理。
点击这个链接-。但无法找到此错误的原因。请按照邮件中的步骤进行操作,但我面临以下问题-ADLAUSQL1\ADLAUSQL1.usqlproj34,3:错误MSB4019:未找到导入的项目C:\Users\buildguest\AppData\Roaming\Microsoft\DataLake\MsBuild\1.0\Usql.targets。确认声明中的路径正确,并且该文件存在于磁盘上,我将遵循Azure Data factory遵循的相同过程。但是我在这里得到了上面的错误。这是我从项目文件中导入的命令,所以你导入了位于本地的文件?这是因为您使用的托管代理无法获取本地文件。这一问题有两种选择。选项1:在本地计算机中设置专用代理,并使用专用代理将生成排队。选项2:在同一个repo中添加导入的文件,并使用新路径导入。感谢提供的信息..我现在已设置了一个专用代理,并遇到此问题-MSB4062:无法从程序集Microsoft.Cosmos.ScopeStudio.VsExtension.CompilerTask.USqlCompilerTask加载Microsoft.Cosmos.ScopeStudio.VsExtension.CompilerTask任务。无法加载文件或程序集。@ArunS由于您最初提出的问题已经解决,您可以标记答案√ 答案左边的符号。这也将有利于其他有类似问题的人。关于你的补充问题,请参考帖子。