Unable to build default ASP.Net Core Web Applicati

2019-04-20 03:52发布

问题:

Having created a new ASP.Net Core Web Application (.Net Core) project in Visual Studio 2015 Update 3 and checked this in to a Visual Studio Team Services git repository. I am using the release version of .Net Core and ASP.Net Core.

I am now trying to build this using the VSTS Build system using a build definition based on this guide: https://www.visualstudio.com/en-us/docs/build/apps/aspnet/aspnetcore-to-azure

However, the build fails on the dotnet restore step with the log shown below (first part not included, this is from where it starts to fail).

What am I doing wrong? Do I need to prep the current Hosted Agents in any way to get this working with the v1.0.0 release of ASP.Net Core?

2016-07-01T06:58:23.7437947Z log  : Restoring packages for tool 'BundlerMinifier.Core' in C:\a\1\s\src\FjordTours.BasicApp\project.json...
2016-07-01T06:58:23.7457953Z info :   GET https://api.nuget.org/v3-flatcontainer/bundlerminifier.core/index.json
2016-07-01T06:58:24.2167463Z info :   OK https://api.nuget.org/v3-flatcontainer/bundlerminifier.core/index.json 469ms
2016-07-01T06:58:24.2188952Z info :   GET https://api.nuget.org/v3-flatcontainer/bundlerminifier.core/2.0.238/bundlerminifier.core.2.0.238.nupkg
2016-07-01T06:58:24.4460947Z info :   OK https://api.nuget.org/v3-flatcontainer/bundlerminifier.core/2.0.238/bundlerminifier.core.2.0.238.nupkg 226ms
2016-07-01T06:58:24.4500936Z info :   GET https://api.nuget.org/v3-flatcontainer/nuglify/index.json
2016-07-01T06:58:24.7169172Z info :   OK https://api.nuget.org/v3-flatcontainer/nuglify/index.json 266ms
2016-07-01T06:58:24.7184197Z info :   GET https://api.nuget.org/v3-flatcontainer/nuglify/1.5.0/nuglify.1.5.0.nupkg
2016-07-01T06:58:24.9458237Z info :   OK https://api.nuget.org/v3-flatcontainer/nuglify/1.5.0/nuglify.1.5.0.nupkg 226ms
2016-07-01T06:58:25.0165432Z log  : Installing NUglify 1.5.0.
2016-07-01T06:58:25.0175433Z log  : Installing BundlerMinifier.Core 2.0.238.
2016-07-01T06:58:26.3365438Z log  : Restoring packages for tool 'Microsoft.AspNetCore.Razor.Tools' in C:\a\1\s\src\FjordTours.BasicApp\project.json...
2016-07-01T06:58:27.5785417Z error: Package Microsoft.DotNet.ProjectModel.Loader 1.0.0-preview2-003121 is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0). Package Microsoft.DotNet.ProjectModel.Loader 1.0.0-preview2-003121 supports: netstandard1.6 (.NETStandard,Version=v1.6)
2016-07-01T06:58:27.5815442Z error: Package Microsoft.DotNet.Cli.Utils 1.0.0-preview2-003121 is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0). Package Microsoft.DotNet.Cli.Utils 1.0.0-preview2-003121 supports:
2016-07-01T06:58:27.5815442Z error:   - net451 (.NETFramework,Version=v4.5.1)
2016-07-01T06:58:27.5828217Z error:   - netstandard1.6 (.NETStandard,Version=v1.6)
2016-07-01T06:58:27.5835753Z error: One or more packages are incompatible with .NETCoreApp,Version=v1.0.
2016-07-01T06:58:27.5845450Z log  : Restoring packages for tool 'Microsoft.AspNetCore.Server.IISIntegration.Tools' in C:\a\1\s\src\FjordTours.BasicApp\project.json...
2016-07-01T06:58:27.5855447Z info :   GET https://api.nuget.org/v3-flatcontainer/microsoft.aspnetcore.server.iisintegration.tools/index.json
2016-07-01T06:58:27.8429648Z info :   OK https://api.nuget.org/v3-flatcontainer/microsoft.aspnetcore.server.iisintegration.tools/index.json 257ms
2016-07-01T06:58:27.8452904Z info :   GET https://api.nuget.org/v3-flatcontainer/microsoft.aspnetcore.server.iisintegration.tools/1.0.0-preview2-final/microsoft.aspnetcore.server.iisintegration.tools.1.0.0-preview2-final.nupkg
2016-07-01T06:58:28.0722938Z info :   OK https://api.nuget.org/v3-flatcontainer/microsoft.aspnetcore.server.iisintegration.tools/1.0.0-preview2-final/microsoft.aspnetcore.server.iisintegration.tools.1.0.0-preview2-final.nupkg 226ms
2016-07-01T06:58:28.1392401Z info :   GET https://api.nuget.org/v3-flatcontainer/microsoft.dotnet.projectmodel/index.json
2016-07-01T06:58:28.4376727Z info :   OK https://api.nuget.org/v3-flatcontainer/microsoft.dotnet.projectmodel/index.json 298ms
2016-07-01T06:58:28.4406725Z info :   GET https://api.nuget.org/v3-flatcontainer/microsoft.dotnet.projectmodel/1.0.0-rc3-003121/microsoft.dotnet.projectmodel.1.0.0-rc3-003121.nupkg
2016-07-01T06:58:28.6676393Z info :   OK https://api.nuget.org/v3-flatcontainer/microsoft.dotnet.projectmodel/1.0.0-rc3-003121/microsoft.dotnet.projectmodel.1.0.0-rc3-003121.nupkg 227ms
2016-07-01T06:58:28.6946386Z log  : Installing Microsoft.DotNet.ProjectModel 1.0.0-rc3-003121.
2016-07-01T06:58:28.6956390Z log  : Installing Microsoft.AspNetCore.Server.IISIntegration.Tools 1.0.0-preview2-final.
2016-07-01T06:58:32.3480344Z error: Package Microsoft.DotNet.ProjectModel 1.0.0-rc3-003121 is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0). Package Microsoft.DotNet.ProjectModel 1.0.0-rc3-003121 supports:
2016-07-01T06:58:32.3500341Z error:   - net451 (.NETFramework,Version=v4.5.1)
2016-07-01T06:58:32.3500341Z error:   - netstandard1.6 (.NETStandard,Version=v1.6)
2016-07-01T06:58:32.3510431Z error: One or more packages are incompatible with .NETCoreApp,Version=v1.0.
2016-07-01T06:58:32.7120347Z error: Package Microsoft.AspNetCore.Mvc 1.0.0 is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0). Package Microsoft.AspNetCore.Mvc 1.0.0 supports:
2016-07-01T06:58:32.7130338Z error:   - net451 (.NETFramework,Version=v4.5.1)
2016-07-01T06:58:32.7140347Z error:   - netstandard1.6 (.NETStandard,Version=v1.6)
2016-07-01T06:58:32.7140347Z error: Package Microsoft.ApplicationInsights.AspNetCore 1.0.0 is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0). Package Microsoft.ApplicationInsights.AspNetCore 1.0.0 supports:
2016-07-01T06:58:32.7140347Z error:   - net451 (.NETFramework,Version=v4.5.1)
2016-07-01T06:58:32.7150344Z error:   - netstandard1.6 (.NETStandard,Version=v1.6)
2016-07-01T06:58:32.7150344Z error: Package Microsoft.DotNet.ProjectModel.Loader 1.0.0-preview2-003121 is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0). Package Microsoft.DotNet.ProjectModel.Loader 1.0.0-preview2-003121 supports: netstandard1.6 (.NETStandard,Version=v1.6)
2016-07-01T06:58:32.7160344Z error: Package Microsoft.DotNet.Cli.Utils 1.0.0-preview2-003121 is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0). Package Microsoft.DotNet.Cli.Utils 1.0.0-preview2-003121 supports:
2016-07-01T06:58:32.7160344Z error:   - net451 (.NETFramework,Version=v4.5.1)
2016-07-01T06:58:32.7160344Z error:   - netstandard1.6 (.NETStandard,Version=v1.6)
2016-07-01T06:58:32.7174190Z error: One or more packages are incompatible with .NETCoreApp,Version=v1.0.
2016-07-01T06:58:32.7174190Z info : Committing restore...
2016-07-01T06:58:32.7210345Z log  : Writing lock file to disk. Path: C:\a\1\s\src\FjordTours.BasicApp\project.lock.json
2016-07-01T06:58:32.9154998Z log  : C:\a\1\s\src\FjordTours.BasicApp\project.json
2016-07-01T06:58:32.9174999Z log  : Restore failed in 44621ms.
2016-07-01T06:58:32.9274991Z NuGet Config files used:
2016-07-01T06:58:32.9294993Z Errors in C:\a\1\s\src\FjordTours.BasicApp\project.json
2016-07-01T06:58:32.9294993Z     Package Microsoft.DotNet.ProjectModel.Loader 1.0.0-preview2-003121 is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0). Package Microsoft.DotNet.ProjectModel.Loader 1.0.0-preview2-003121 supports: netstandard1.6 (.NETStandard,Version=v1.6)
2016-07-01T06:58:32.9305008Z     Package Microsoft.DotNet.Cli.Utils 1.0.0-preview2-003121 is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0). Package Microsoft.DotNet.Cli.Utils 1.0.0-preview2-003121 supports:
2016-07-01T06:58:32.9305008Z       - net451 (.NETFramework,Version=v4.5.1)
2016-07-01T06:58:32.9315007Z       - netstandard1.6 (.NETStandard,Version=v1.6)
2016-07-01T06:58:32.9315007Z     One or more packages are incompatible with .NETCoreApp,Version=v1.0.
2016-07-01T06:58:32.9325003Z     Package Microsoft.DotNet.ProjectModel 1.0.0-rc3-003121 is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0). Package Microsoft.DotNet.ProjectModel 1.0.0-rc3-003121 supports:
2016-07-01T06:58:32.9325003Z       - net451 (.NETFramework,Version=v4.5.1)
2016-07-01T06:58:32.9325003Z       - netstandard1.6 (.NETStandard,Version=v1.6)
2016-07-01T06:58:32.9335002Z     One or more packages are incompatible with .NETCoreApp,Version=v1.0.
2016-07-01T06:58:32.9335002Z     Package Microsoft.AspNetCore.Mvc 1.0.0 is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0). Package Microsoft.AspNetCore.Mvc 1.0.0 supports:
2016-07-01T06:58:32.9345003Z       - net451 (.NETFramework,Version=v4.5.1)
2016-07-01T06:58:32.9345003Z       - netstandard1.6 (.NETStandard,Version=v1.6)
2016-07-01T06:58:32.9355002Z     Package Microsoft.ApplicationInsights.AspNetCore 1.0.0 is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0). Package Microsoft.ApplicationInsights.AspNetCore 1.0.0 supports:
2016-07-01T06:58:32.9355002Z       - net451 (.NETFramework,Version=v4.5.1)
2016-07-01T06:58:32.9355002Z       - netstandard1.6 (.NETStandard,Version=v1.6)
2016-07-01T06:58:32.9365007Z     Package Microsoft.DotNet.ProjectModel.Loader 1.0.0-preview2-003121 is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0). Package Microsoft.DotNet.ProjectModel.Loader 1.0.0-preview2-003121 supports: netstandard1.6 (.NETStandard,Version=v1.6)
2016-07-01T06:58:32.9365007Z     Package Microsoft.DotNet.Cli.Utils 1.0.0-preview2-003121 is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0). Package Microsoft.DotNet.Cli.Utils 1.0.0-preview2-003121 supports:
2016-07-01T06:58:32.9374999Z       - net451 (.NETFramework,Version=v4.5.1)
2016-07-01T06:58:32.9374999Z       - netstandard1.6 (.NETStandard,Version=v1.6)
2016-07-01T06:58:32.9385006Z     One or more packages are incompatible with .NETCoreApp,Version=v1.0.
2016-07-01T06:58:32.9385006Z     C:\Users\buildguest\AppData\Roaming\NuGet\NuGet.Config
2016-07-01T06:58:32.9385006Z     C:\ProgramData\nuget\Config\Microsoft.VisualStudio.Offline.config
2016-07-01T06:58:32.9395005Z Feeds used:
2016-07-01T06:58:32.9395005Z     https://api.nuget.org/v3/index.json
2016-07-01T06:58:32.9405006Z     C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\
2016-07-01T06:58:32.9514998Z Installed:
2016-07-01T06:58:32.9525024Z     159 package(s) to C:\a\1\s\src\FjordTours.BasicApp\project.json

The global.json (as created by the ASP.Net Core Web Application (.Net Core) template):

{
  "projects": [ "src", "test" ],
  "sdk": {
    "version": "1.0.0-preview2-003121"
  }
}

The project.json (as created by the ASP.Net Core Web Application (.Net Core) template):

{
  "dependencies": {
    "Microsoft.NETCore.App": {
      "version": "1.0.0",
      "type": "platform"
    },
    "Microsoft.AspNetCore.Diagnostics": "1.0.0",
    "Microsoft.AspNetCore.Mvc": "1.0.0",
    "Microsoft.AspNetCore.Razor.Tools": {
      "version": "1.0.0-preview2-final",
      "type": "build"
    },
    "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0",
    "Microsoft.AspNetCore.Server.Kestrel": "1.0.0",
    "Microsoft.AspNetCore.StaticFiles": "1.0.0",
    "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0",
    "Microsoft.Extensions.Configuration.Json": "1.0.0",
    "Microsoft.Extensions.Logging": "1.0.0",
    "Microsoft.Extensions.Logging.Console": "1.0.0",
    "Microsoft.Extensions.Logging.Debug": "1.0.0",
    "Microsoft.Extensions.Options.ConfigurationExtensions": "1.0.0",
    "Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0"
  },

  "tools": {
    "BundlerMinifier.Core": "2.0.238",
    "Microsoft.AspNetCore.Razor.Tools": "1.0.0-preview2-final",
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final"
  },

  "frameworks": {
    "netcoreapp1.0": {
      "imports": [
        "dotnet5.6",
        "portable-net45+win8"
      ]
    }
  },

  "buildOptions": {
    "emitEntryPoint": true,
    "preserveCompilationContext": true
  },

  "runtimeOptions": {
    "configProperties": {
      "System.GC.Server": true
    }
  },

  "publishOptions": {
    "include": [
      "wwwroot",
      "Views",
      "Areas/**/Views",
      "appsettings.json",
      "web.config"
    ]
  },

  "scripts": {
    "prepublish": [ "bower install", "dotnet bundle" ],
    "postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ]
  }
}

回答1:

You should replace "tools" section in your project.json like this:

    "tools": {
    "BundlerMinifier.Core": "2.1.258",
    "Microsoft.AspNetCore.Razor.Tools": {
      "version": "1.0.0-preview2-final",
      "imports": [
        "netstandard1.6"
      ]
    },
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": {
      "version": "1.0.0-preview2-final",
      "imports": [
        "netstandard1.6"
      ]
    },
    "Microsoft.EntityFrameworkCore.Tools": {
      "version": "1.0.0-preview2-final",
      "imports": [
        "netstandard1.6"
      ]
    },
    "Microsoft.Extensions.SecretManager.Tools": "1.0.0-preview2-final",
    "Microsoft.VisualStudio.Web.CodeGeneration.Tools": {
      "version": "1.0.0-preview2-final",
      "imports": [
        "portable-net45+win8+wp8+wpa81",
        "netstandard1.6"
      ]
    }
  },

some packages needs to import netstandard1.6 but Microsoft.VisualStudio.Web.CodeGeneration.Tools needs netstandard1.6 and portable-net45+win8+wp8+wpa81



回答2:

I encountered the same issue with dotnet restore using the hosted build agent in VSTS. Based on the comment from @svick , I ran dotnet --version to check what is installed on the hosted agent. As of today, it is still 1.0.0-preview1-002702 and not the referenced version of 1.0.0-preview2-003121.

2016-07-04T06:17:47.5047693Z ##[warning]File name doesn't indicate a full path to a executable file.
2016-07-04T06:17:47.5057787Z Executing the following command-line. (workingFolder = C:\a\1\s)
2016-07-04T06:17:47.5057787Z dotnet --version
2016-07-04T06:17:47.5067748Z Error message highlight pattern: 
2016-07-04T06:17:47.5067748Z Warning message highlight pattern: 
2016-07-04T06:17:48.9679166Z 1.0.0-preview1-002702

The official software for the hosted build agents can be found at https://www.visualstudio.com/en-us/docs/build/agents/hosted-pool . In particular, notice it still shows Visual Studio 2015 Update 2. Hopefully, this gets updated soon.