【发布时间】:2017-06-06 05:02:18
【问题描述】:
我在通过 git 部署到 Azure 时遇到问题。我的应用程序Blogg 在应用程序发布到服务器后运行PostCompile 命令时一直挂断。该命令是:
<Exec Command="dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" />
我的印象是此命令的包引用来自Microsoft.AspNetCore.Server.IISIntegration,但即使添加了1.1.0-preview4-final 和1.1.2(最新)版本,我仍然遇到问题。
如果有帮助,以下是我的 .csproj 文件中的内容:
`<Project ToolsVersion="15.0" Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp1.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore" Version="1.0.4" />
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="1.1.2" />
<PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.0.3" />
<PackageReference Include="Microsoft.AspNetCore.Server.IISIntegration" Version="1.1.0-preview4-final" />
<PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="1.0.2" />
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="1.1.2" />
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="1.0.2" />
<PackageReference Include="Microsoft.VisualStudio.Web.BrowserLink" Version="1.0.1" />
</ItemGroup>
<ItemGroup>
<DotNetCliToolReference Include="Microsoft.DotNet.Watcher.Tools" Version="1.0.0" />
<PackageReference Include="Microsoft.AspNetCore.Session" Version="1.1.2" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="1.1.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="1.1.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.sqlserver.Design" Version="1.1.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="1.0.0-msbuild2-final" />
<DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="1.0.0-msbuild2-final" />
</ItemGroup>
<ItemGroup>
<None Include="wwwroot/*" CopyToPublishDirectory="Always" />
<None Include="Views/*" CopyToPublishDirectory="Always" />
<None Include="web.config" CopyToPublishDirectory="Always" />
</ItemGroup>
<Target Name="MyPostCompileTarget" AfterTargets="Publish">
<Exec Command="dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" />
</Target>
</Project>`
我从 Azure 日志中得到的错误:
`Command: "D:\home\site\deployments\tools\deploy.cmd"
Handling ASP.NET Core Web Application deployment.
Restoring packages for D:\home\site\repository\Blogg.csproj...
D:\Program Files (x86)\dotnet\sdk\1.0.0-rc4-004771\NuGet.targets(97,5): warning : Dependency specified was Microsoft.AspNetCore.Server.IISIntegration (>= 1.1.0-preview4-final) but ended up with Microsoft.AspNetCore.Server.IISIntegration 1.1.0. [D:\home\site\repository\Blogg.csproj]
Installing Microsoft.AspNetCore.Http.Features 1.1.0.
Installing Microsoft.AspNetCore.Hosting.Server.Abstractions 1.1.0.
Installing Microsoft.Extensions.Configuration.Abstractions 1.1.0.
Installing Microsoft.AspNetCore.Http.Abstractions 1.1.0.
Installing Microsoft.AspNetCore.WebUtilities 1.1.0.
Installing Microsoft.Extensions.ObjectPool 1.1.0.
Installing Microsoft.Net.Http.Headers 1.1.0.
Installing Microsoft.AspNetCore.Http.Extensions 1.1.0.
Installing Microsoft.AspNetCore.Hosting.Abstractions 1.1.0.
Installing Microsoft.AspNetCore.Http 1.1.0.
Installing Microsoft.Extensions.Logging.Abstractions 1.1.0.
Installing Microsoft.Extensions.Options 1.1.0.
Installing Microsoft.AspNetCore.HttpOverrides 1.1.0.
Installing Microsoft.AspNetCore.Server.IISIntegration 1.1.0.
Writing lock file to disk. Path: D:\home\site\repository\obj\project.assets.json
Restore completed in 18.69 sec for D:\home\site\repository\Blogg.csproj.
Restoring packages for D:\home\site\repository\Blogg.csproj...
Restore completed in 14.38 sec for D:\home\site\repository\Blogg.csproj.
Restoring packages for D:\home\site\repository\Blogg.csproj...
Restore completed in 17.49 sec for D:\home\site\repository\Blogg.csproj.
NuGet Config files used:
D:\local\AppData\NuGet\NuGet.Config
Feeds used:
https://api.nuget.org/v3/index.json
Installed:
14 package(s) to D:\home\site\repository\Blogg.csproj
Microsoft (R) Build Engine version 15.1.545.13942
Copyright (C) Microsoft Corporation. All rights reserved.
Blogg -> D:\home\site\repository\bin\Release\netcoreapp1.0\Blogg.dll
No executable found matching command "dotnet-publish-iis"
D:\home\site\repository\Blogg.csproj(30,5): error MSB3073: The command "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" exited with code 1.
Failed exitCode=1, command=dotnet publish "D:\home\site\repository\Blogg.csproj" --output "D:\local\Temp\8d4ac97ca692979" --configuration Release
An error has occurred during web site deployment.
\r\nD:\Program Files (x86)\SiteExtensions\Kudu\62.60524.2862\bin\Scripts\starter.cmd "D:\home\site\deployments\tools\deploy.cmd"`
【问题讨论】:
标签: azure iis deployment .net-core microsoft-web-deploy