我有一個ASP.NET核心項目,與VS正確構建,但與TeamCity失敗。ASP.NET核心(NET框架)TeamCity構建失敗,VS構建正確
這是編譯爲一個庫,但TeamCity的嘗試構建它作爲一個可執行文件,並抱怨缺乏「主」的一個項目:
CSC error CS5001: Program does not contain a static 'Main' method suitable for an entry point
的.csproj的文件的內容是爲請按照下列步驟操作:
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<OutputType>Library</OutputType>
</PropertyGroup>
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<RuntimeIdentifier>win7-x86</RuntimeIdentifier>
<OutputTypeEx>library</OutputTypeEx>
<StartupObject />
<AssemblyName>Test</AssemblyName>
<RootNamespace>Test</RootNamespace>
</PropertyGroup>
<ItemGroup>
<Folder Include="wwwroot\" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore" Version="1.1.2" />
<PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.1.3" />
<PackageReference Include="Newtonsoft.Json" Version="10.0.3" />
</ItemGroup>
</Project>
Visual Studio在構建dll文件時沒有問題。
重現:
- 創建ASP.NET核心(.NET Framework)的項目
- 更改輸出類型庫
- 取出的Program.cs/startup.cs文件
- 使用Visual Studio編譯以確認庫正在構建中
- 使用Team City構建並出現錯誤
關於這兩篇文章,我們沒有project.json文件;這是一個經典的.csproj文件;它是asp.net核心,但具有常規的網絡庫,它不是具有從命令行構建的核心庫的asp.net核心 – Thomas
dotnet核心插件將無法提供幫助,因爲它表示與我們使用的路徑不同的構建路徑開發時;就VS而言,這是一個常規的csproj;在TC方面,我已經清理了文件夾,從零開始重建等等 – Thomas