pwa*_*was 5 .net-core asp.net-core
最近,我使用 .NET Core Preview 4 SDK 安装了 VS 2017 RC。在新的SDK中,没有project.json,只有csproj文件:
<PropertyGroup>
<OutputType>winexe</OutputType>
<TargetFramework>netcoreapp1.0</TargetFramework>
<PreserveCompilationContext>true</PreserveCompilationContext>
</PropertyGroup
Run Code Online (Sandbox Code Playgroud)
问题是现在是dotnet publish输出dll,而不是exe文件。我尝试过跑步dotnet publish -r win10-x64,但它甚至无法编译。
如何在 dotnet 1.1 Preview 中制作独立的应用程序?也许我应该runtime在 csproj 中指定部分(就像 json 中所要求的那样)?
我相信,您应该执行以下操作:
dotnet build -r win10-x64
dotnet publish -c release -r win10-x64
Run Code Online (Sandbox Code Playgroud)
您需要首先构建它。
另一件需要指出的事情是,.csproj 和 project.json 功能几乎相同。所以 .csproj 应该配置:
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" />
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp1.0</TargetFramework>
<VersionPrefix>1.0.0</VersionPrefix>
<DebugType>Portable</DebugType>
<RuntimeIdentifiers>win10-x64;osx.10.11-x64</RuntimeIdentifiers>
</PropertyGroup>
<ItemGroup>
<Compile Include="**\*.cs" />
<EmbeddedResource Include="**\*.resx" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NETCore.App">
<Version>1.0.1</Version>
</PackageReference>
<PackageReference Include="Newtonsoft.Json">
<Version>9.0.1</Version>
</PackageReference>
<PackageReference Include="Microsoft.NET.Sdk">
<Version>1.0.0-alpha-20161102-2</Version>
<PrivateAssets>All</PrivateAssets>
</PackageReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>
Run Code Online (Sandbox Code Playgroud)
以上是指定您所追求的核心/自包含功能的正确方法。您可以在这里找到很多相关信息。
| 归档时间: |
|
| 查看次数: |
3946 次 |
| 最近记录: |