2016-11-17 12 views
0

.NET Core項目編譯得很好。一旦你更新你的NUGET軟件包,它會失敗並顯示下面列出的消息。DotNetCore.1.0.1-VS2015Tools.Preview2.0.3 NUGET更新後不能編譯

這是在安裝新工具之前和之後發生的。 更新的今天:DotNetCore.1.0.1-VS2015Tools.Preview2.0.3

錯誤: 嚴重性代碼說明項目文件的線路抑制狀態

錯誤3.您也可以嘗試發佈一個庫,這是不支持。使用dotnet pack來分發庫。

錯誤2.該項目未在「運行時間」部分列出「win10-x64,win81-x64,win8-x64,win7-x64」之一。

錯誤1.項目尚未恢復或恢復失敗 - 運行dotnet restore

錯誤無法找到運行目標框架「.NETCoreApp,版本= V1.0' 與目標運行時的一個兼容:」 win10-x64,win81-x64,win8-x64,win7-x64'。我還刪除了global.json版本規範,因爲我被告知它只是使用最新的,這爲我節省了一些時間,我是否應該這樣做?

我不明白這是怎麼沒有測試。我在VS2015中使用.NET Core模板創建了一個全新的乾淨Web應用程序。我更新了NUGET,甚至嘗試了包括預發佈。現在整個事情都失敗了。

的思考和疑問:

  1. 誰能告訴我們如何不都將只是一個Windows服務器上託管的膨脹來創建一個簡單的.NET核心Web項目配置?這是大多數人會做的。在發佈到IIS時,有一個簡單的project.config而不是很多依賴項會很好。每次更新你必須挖掘並調整你的項目配置,這需要停止對嗎?

  2. 爲什麼項目配置中的「運行時間」部分未包含在默認模板中?

  3. 對我來說似乎很陌生,你的項目每次更新都會爆炸。

+1

你的'.net core sdk'版本是什麼?另外,用你的'project.json'更新你的問題。我創建了一個簡單的[教程](https://github.com/fabriciokoch/AspnetcoreAngular),可以幫助你。它適用於1.0.0,但這個新版本的過程是一樣的。 –

+0

你是否也安裝了sdk/untime? C:\ Program Files \ dotnet \ shared \ Microsoft.NETCore.App'和'C:\ Program Files(x86)\ dotnet \ shared \ Microsoft.NETCore.App'文件夾分別是什麼? – Tseng

+0

@Tseng x86文件夾中沒有任何內容。文件夾1.0.1在C:\ Program Files \ dotnet \ shared \ Microsoft.NETCore.App中。 –

回答

0

這是一個非問題,因爲它們改變了所有這些在新版本中的工作方式。

1

將Microsoft.NETCore.App從版本1.0.1升級到版本1.1.0時出現相同的錯誤。請在project.json的Dependencies節點中添加「type」:「platform」選項。

"dependencies": { 
"Microsoft.NETCore.App": { 
    "version": "1.1.0", 
    "type": "platform" 
} 
}, 

而且我們經常使用Web.config文件在部署到IIS時配置處理程序信息。 project.json文件用於管理項目依賴關係。所以,如果你的項目中有任何依賴關係發生了變化,你只需要升級你的project.json文件。 Web.config文件不需要更改。

關於爲什麼「運行時間」部分不包含在默認項目模板問題中,這是因爲不同的用戶需要不同的運行時間。每個用戶都可以根據項目的要求將這些部分添加到project.json文件中。

+0

我想我的問題是爲什麼在更新NUGET包後新的.NET Core Web應用程序會中斷(VS2017)?很混亂。 project.json消失的事實很好,但它必須打破很多現有的應用程序。 –

+0

首先,您需要檢查更新包中的更改內容。例如,如果其中一個更新的程序包更改了其目標框架,但您的.NET Core Web應用程序的框架未更改。它會導致編譯錯誤。因此,在更新NuGet軟件包時,請檢查新版本中更改的內容,確保它支持您當前的項目框架。 –

+0

我會在有空的時候進行挖掘。在引起這麼多麻煩之後不得不放棄.NET Core。很快會重新訪問。當我有空閒時間並嘗試獲得一些答案時,我會深入研究你的所有建議。 –

0

您可以簡單地將運行時添加到您的project.json文件中,就像顯示錯誤消息一樣。例如:

"runtimes": { 
    "win7-x64": { } 
    } 

通常,您不需要指定運行時選項。但它是自包含部署(SCD)所必需的。有關更多信息,請參閱runTimesSelf-contained deployments (SCD)

+0

我想我的問題是爲什麼在更新NUGET包後新的.NET Core Web應用程序會中斷(VS2017)?很混亂。 project.json消失的事實很好,但它必須打破很多現有的應用程序。 –

相關問題