Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Tfs 使用Msbuild构建ASP核心(ASP 5)项目_Tfs_Msbuild_Asp.net Core_Tfsbuild_Msbuild Task - Fatal编程技术网

Tfs 使用Msbuild构建ASP核心(ASP 5)项目

Tfs 使用Msbuild构建ASP核心(ASP 5)项目,tfs,msbuild,asp.net-core,tfsbuild,msbuild-task,Tfs,Msbuild,Asp.net Core,Tfsbuild,Msbuild Task,我是MSBuild和ASP核心方面的新手,在使用ASP核心(ASP 5)配置MSBuild时遇到问题 我的最后一个错误是: C:\Program Files(x86)\MSBuild\Microsoft\VisualStudio\v14.0\DNX\Microsoft.DNX.targets(126):需要安装DNX运行时软件包。 但是安装了Dnx 我在网络研究中采取的主要步骤: 已安装最新版本的dnvm 已安装dnx的最新版本 我用https://www.nuget.org/api/v2val

我是MSBuild和ASP核心方面的新手,在使用ASP核心(ASP 5)配置MSBuild时遇到问题

我的最后一个错误是:

C:\Program Files(x86)\MSBuild\Microsoft\VisualStudio\v14.0\DNX\Microsoft.DNX.targets(126):需要安装DNX运行时软件包。

但是安装了Dnx

我在网络研究中采取的主要步骤:

  • 已安装最新版本的dnvm

  • 已安装dnx的最新版本

  • 我用
    https://www.nuget.org/api/v2
    value

  • 我已将windows用户变量中的
    PATH
    环境变量修改为
    C:\Users\OAG\.dnx\runtimes\dnx-clr-win-x86.1.0.0-rc1-update1\bin;C:\ProgramFiles(x86)\MSBuild\14.0\Bin;C:\Users\OAG\.dnx\bin


  • 顺便说一下,对于msbuild操作,我的tfs版本是2013。

    请确保已将global.json更新为指向较新的运行时

    {
      "projects": [ "src", "test" ],
      "sdk": {
        "version": "1.0.0-rc1-xxxx",
        "runtime": "coreclr"
      }
    }
    
    这里有一个类似的问题:

    此外,下面的文章解释了需要添加哪些powershell脚本以及如何配置构建。并检查以下步骤中的链接是否解决问题。 对于您的问题

  • 请确保您安装的DNX版本与您在项目中使用的版本匹配。您可以通过“dnvm list”命令检查已安装的DNX版本,并通过“dnvm use”命令更改版本
  • 从DNVM安装或使用DNX时,添加了-g或-global参数以确保所有用户都可以使用DNX
  • 当您从dnvm安装dnx时,dnx bin已自动添加到用户路径环境变量中。因此,您不需要手动添加它


    关于DNVM的说明:

    我的问题终于解决了

    首先,谢谢你的回答,让我知道结果

    我使用了Teamcity而不是TFS Msbuild,但与未安装dnx相同的错误仍然存在

    对我来说有趣的是,我在几台计算机上检查了它,在其中一些计算机上,所有的东西都正常工作,而在另一些计算机上,错误仍然存在

    在某些情况下,我有这个错误,但在添加新的代理来构建之后,错误得到了解决

    使用此链接并将这行代码添加到命令行参数之后

    /冗长:最少 /p:RuntimeToolingDirectory=“C:\Users\Administrator.dnx\runtimes\dnx-clr-win-x86.1.0.0-rc1-update1”

    该错误消失,无法找到包的错误运行dnu restore,这似乎很容易解决,但这并不容易,因为包已经存在于我的dnx文件夹中,并且在错误中提到包不存在(发生了什么事?)

    Patrick还提到,在Microsoft link的帮助下,我在主生成操作之前添加了PowerShell级别,并添加了Prebuild.ps1文件(存在于link中),解决了dnu还原问题,现在,命令行参数在主生成操作中可以为空

    但发生了什么事?

    我发现在构建操作中(在某些情况下我不知道),构建代理正在为构建和使用自己的dnx项创建单独的区域,在我的情况下,构建代理在这个文件夹中工作

    C:\Windows\SysWOW64\config\systemprofile\

    它包含自己的运行时和包,最后我明白了发生了什么,dnx运行时不存在错误是运行时版本在该区域不存在的原因,dnu还原问题是因为它在自己的区域中查找,而不是用户dnx包


    顺便说一下,我的目标操作系统是windows server 2008 R2,如果您的
    构建代理使用系统帐户运行,我认为您应该在系统级别而不是用户级别设置环境变量。更重要的是,在你的道路上有`\`。