2016-06-29 26 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页面找到它。基本上,“平台”意味着从安装的运行时使用它,并且在发布/部署应用程序时不会打包。

基本上,您使用“平台”的便携式应用程序,没有类型的独立应用程序。