2016-06-29 70 views
6

我找不到有關「構建」和「平臺」(以及其他一些)依賴類型之間有什麼區別的信息,什麼是默認類型。什麼是以及如何選擇project.json中的依賴類型

作爲例子,我使用

"Microsoft.Extensions.JsonParser.Sources": "1.0.0" 

"Microsoft.Extensions.JsonParser.Sources": { 
    "type": "build", 
    "version": "1.0.0" 
}, 

"Microsoft.Extensions.JsonParser.Sources": { 
    "type": "platform", 
    "version": "1.0.0" 
}, 

那麼如何選擇可以添加依賴? Official documentation尚未包含此信息。

回答

5

我建議避免手動手動編輯這個文件,這樣你就不用擔心太多。此外,還有plans將其完全刪除 - 這樣您將不再使用project.json文件來定義dependencies。按照project.jsonJSON SchemaStore definitiontype鍵定義爲這樣:

"type": { 
    "type": "string", 
    "default": "default", 
    "enum": [ "default", "build", "platform" ] 
  • 構建 =將僅用於該項目建設的相關性,build-time dependency

  • 平臺 =預計將駐留在項目配置爲target的平臺上的依賴項。

類型爲「平臺」上依賴屬性意味着,在發佈時,該工具將跳過發佈的組件對於依賴於出版輸出。

如果您檢查ProjectReader.cs源在DOTNET回購,你會看到它是如何序列化JSON這樣一個對象,並在這個對象,我們可以找到的含義(上面詳述)。

補充閱讀

+0

「我們可以推斷出以下內容:」 你忘了完成這一角色呢? – svick

+0

@svick,是的 - 我分心了那一個...很好的捕獲。 –

0

的文檔中則說明它(至少爲平臺),你只需要看看在合適的地方:)

您可以在.NET Core App Types頁面找到它。基本上,「平臺」意味着從安裝的運行時使用它,並且在發佈/部署應用程序時不會打包。

基本上,您使用「平臺」的便攜式應用程序,沒有類型的獨立應用程序。