一、创建发布文件
第一步:运行 dotnet restore 命令,以还原项目中指定的依赖项
1 dotnet restore
第二步:使用 dotnet build 命令为目标平台上的应用创建调试版本。 如果不指定想要生成的运行时标识符,则 dotnet build 命令将会创建仅适用于当前系统运行时 ID 的版本。 可使用以下命令生成目标平台适用的应用:
1 dotnet build -r win81-x64
我的服务器是:Windows 8.1 / Windows Server 2012 R2
win81-x64
win81-x86
win81-arm
注:如果没有通过,提示如下类似信息:
C:Program Filesdotnetsdk1.0.0SdksMicrosoft.NET.SdkuildMicrosoft.NET.Sdk.targets(92,5): error : Assets file 'D:SiteGCClass4objproject.assets.json' doesn't have a target for '.NETCoreApp,Version=v1.0/win81-x64'. Ensure you have restored this project for TargetFramework='netcoreapp1.0' and RuntimeIdentifier='win81-x64'. [D:SiteGCClass4GCClass4.csproj]
请修改你的.csproj文件,如下:
1 <Project Sdk="Microsoft.NET.Sdk.Web"> 2 <PropertyGroup> 3 <TargetFramework>netcoreapp1.0</TargetFramework> 4 <RuntimeIdentifiers>win81-x64</RuntimeIdentifiers> 5 </PropertyGroup> 6 <ItemGroup> 7 <PackageReference Include="Microsoft.AspNetCore" Version="1.0.3" /> 8 <PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.0.2" /> 9 <PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="1.0.1" /> 10 <PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="1.0.1" /> 11 <PackageReference Include="Microsoft.VisualStudio.Web.BrowserLink" Version="1.0.1" /> 12 </ItemGroup> 13 </Project>
再次执行“第一步”和“第二步”,通过后在继续以下步骤
第三步:调试并测试该程序后,可以通过对两个目标平台使用 dotnet publish 命令来为每个作为目标的平台创建要与应用一起部署的文件,如下所示:
1 dotnet publish -c release -r win81-x64
-c 发布时要使用的配置。 默认值为 Debug。
-r 发布针对给定运行时的应用程序。 有关可以使用的运行时标识符 (RID) 列表,请参阅 RID 目录。
这将为目标平台创建一个应用的发行版(而不是调试版)。 生成的文件位于名为 publish 的子目录中,该目录位于项目的 .in elease etcoreapp1.0<runtime_identifier> 子目录的子目录中。 请注意,每个子目录中都包含完整的启动应用所需的文件集(既有应用文件,也有所有 .NET Core 文件)。