【问题标题】:Universal application with visual studio online带有在线视觉工作室的通用应用程序
【发布时间】:2015-08-18 11:34:33
【问题描述】:

我目前正在 Visual Studio Online (VSO) 中设置项目,但在设置自动构建时遇到了麻烦。 我的解决方案包含以通用 Windows 为目标的项目 VSO 使用 msbuild 运行我的项目。

在构建期间,我看到奇怪的错误消息,例如:

    Error CS0518: Predefined type 'System.Void' is not defined or imported
    Error CS0518: Predefined type 'System.Object' is not defined or imported
    Error CS0246: The type or namespace name 'Uri' could not be found (are you missing a using directive or an assembly reference?)

msbuild 使用以下参数调用:

    C:\Program Files (x86)\MSBuild\14.0\bin\amd64\msbuild.exe "C:\a\b0d9e3fd\test\src\Shipping.sln" /nologo /m /nr:false /fl /flp:"logfile=C:\a\b0d9e3fd\test\src\Shipping.sln.log" /dl:CentralLogger,"C:\LR\MMS\Services\Mms\TaskAgentProvisioner\Tools\agent\worker\Microsoft.TeamFoundation.DistributedTask.MSBuild.Logger.dll"*ForwardingLogger,"C:\LR\MMS\Services\Mms\TaskAgentProvisioner\Tools\agent\worker\Microsoft.TeamFoundation.DistributedTask.MSBuild.Logger.dll" /p:Platform=Win32 /p:TargetVersion=”Windows10” /p:TargetPlatformVersion=”10.0.10010.0” /p:platform="any cpu" /p:configuration="release" /p:VisualStudioVersion="14.0"

这有什么问题?使用 msbuild 构建通用 Windows 应用程序是否需要任何其他附加参数?

【问题讨论】:

    标签: visual-studio msbuild win-universal-app azure-devops


    【解决方案1】:

    您的目标是 Windows 10 SDK 吗?如果是这样,请注意它没有安装在 TFS 托管的构建服务器上。因此,您将无法构建使用 Windows 10 SDK 的应用程序。你可以看到the complete list of installed software here

    【讨论】:

      【解决方案2】:

      刚刚找到解决办法。

      如果构建 UWP 应用程序,它会从 VS 自动解析 NuGet 依赖项。默认情况下,VS 10 项目使用第三版的 NuGet,它没有安装在我们的构建机器上。这就是为什么我们有这样的问题。 该问题已通过将 NuGet 3 安装到构建代理和配置脚本来解决,该脚本在构建之前解析 NuGet 包。

      【讨论】:

        【解决方案3】:

        如果您无法自定义构建代理的软件(又名:免费托管代理),另一种解决方法是检查您的 project.lock.json 文件。

        这是因为 NuGet v2.8.7 可以同时读取 project.jsonproject.lock.json 文件,但无法从 project.json 文件生成 project.lock.json 文件。

        而且,如果此时 Microsoft 为其默认构建代理更新 NuGet,您可以将其从源代码控制中删除,并让它作为 Nuget -restore 的一部分自动生成。在此之前,只需签入即可。

        【讨论】:

        • FWIW,我偶然发现了这个问题,因为我正在创建一个 Visual Studio 2015 便携式库并选择 Windows 10 作为目标。
        猜你喜欢
        • 1970-01-01
        • 2013-11-16
        • 2011-03-30
        • 1970-01-01
        • 2019-05-15
        • 2017-08-08
        • 1970-01-01
        • 1970-01-01
        • 2012-06-26
        相关资源
        最近更新 更多