摘要

上篇文章介绍了project.json中的一部分属性。属性真的比较多,所以分开了,考虑到其中的英文比较简单,也不再进行翻译了,从英文原文中,直接粘贴过来了。

project.json(1)

project.json

publicSign

Type: Boolean

true to enable signing of the resulting assembly; otherwise, false. The default is false.

For example:

{
"buildOptions": {
"publicSign": true
}
}

debugType

Type: String

Indicates the type of symbol file (PDB file) to generate. The options are "portable" (for .NET Core projects) or "full" (the traditional Windows-only PDB files).

For example:

{
"buildOptions": {
"debugType": "portable"
}
}

xmlDoc

Type: Boolean

true to generate XML documentation from triple-slash comments in the source code; otherwise, false. The default is false.

For example:

{
"buildOptions": {
"xmlDoc": true
}
}

preserveCompilationContext

Type: Boolean

true to preserve reference assemblies and other context data to allow for runtime compilation; otherwise, false. The default is false.

For example:

{
"buildOptions": {
"preserveCompilationContext": true
}
}

outputName

Type: String

Change the name of the output file.

For example:

{
"buildOptions": {
"outputName": "MyApp"
}
}

compilerName

Type: String

The name of the compiler used for this project. csc by default. Currently, csc (the C# compiler) or fsc (the F# compiler) are supported.

For example:

{
"compilerName": "fsc"
}

compile

Type: Object

An object containing properties for compilation configuration.

include

Type: String or String[] with a globbing pattern.

Specifies which files to include in the build. The patterns are rooted at the project folder. Defaults to none.

For example:

{
"include":["wwwroot", "Views"]
}

exclude

Type: String or String[] with a globbing pattern.

Specifies which files to exclude from the build. The exclude patterns have higher priority than the include patterns, so a file found in both will be excluded. The patterns are rooted at the project folder. Defaults to none.

For example:

{
"exclude": ["bin/**", "obj/**"]
}

includeFiles

Type: String or String[] with a globbing pattern.

A list of file paths to include. The paths are rooted at the project folder. This list has a higher priority than the include and exclude globbing patterns, hence a file listed here and in the exclude globbing pattern will still be included. Defaults to none.

For example:

{
"includeFiles": []
}

excludeFiles

Type: String or String[] with a globbing pattern.

A list of file paths to exclude. The paths are rooted at the project folder. This list has a higher priority than globbing patterns and the include paths, hence a file found in all will be excluded. Defaults to none.

For example:

{
"excludeFiles":[],
}

builtIns

Type: Object

The defaults provided by the system. It can have include and exclude globbing patterns which are merged with the corresponding values of the include and exclude properties.

For example:

{
"builtIns":{}
}

mappings

Type: Object

Keys to the object represent destination paths in the output layout.

Values are either a string or an object representing the source path of files to include. The object represtation can have its own include, exclude, includeFiles and excludeFiles sections.

String example:

{
"mappings": {
"dest/path": "./src/path"
}
}

Object example:

{
"mappings": {
"dest/path":{
"include":"./src/path"
}
}
}

embed

Type: Object

An object containing properties for compilation configuration.

include

Type: String or String[] with a globbing pattern.

{
"include":["wwwroot", "Views"]
}

exclude

Type: String or String[] with a globbing pattern.

Specifies which files to exclude from the build.

For example:

{
"exclude": ["bin/**", "obj/**"]
}

includeFiles

Type: String or String[] with a globbing pattern.

{
"includeFiles":[],
}

excludeFiles

Type: String or String[] with a globbing pattern

{
"excludeFiles":[],
}

builtIns

Type: Object

{
"builtIns":{}
}

mappings

Type: Object

Keys to the object represent destination paths in the output layout.

Values are either a string or an object representing the source path of files to include. The object represtation can have its own include, exclude, includeFiles and excludeFiles sections.

String example:

{
"mappings": {
"dest/path": "./src/path"
}
}

Object example:

{
"mappings": {
"dest/path":{
"include":"./src/path"
}
}
}

copyToOutput

Type: Object

An object containing properties for compilation configuration.

include

Type: String or String[] with a globbing pattern.

{
"include":["wwwroot", "Views"]
}

exclude

Type: String or String[] with a globbing pattern.

Specifies which files to exclude from the build.

For example:

{
"exclude": ["bin/**", "obj/**"]
}

includeFiles

Type: String or String[] with a globbing pattern

{
"includeFiles":[],
}

excludeFiles

Type: String or String[] with a globbing pattern.

{
"excludeFiles":[],
}

builtIns

Type: Object

{
"builtIns":{}
}

mappings

Type: Object

Keys to the object represent destination paths in the output layout.

Values are either a string or an object representing the source path of files to include. The object represtation can have its own include, exclude, includeFiles and excludeFiles sections.

String example:

{
"mappings": {
"dest/path": "./src/path"
}
}

Object example:

{
"mappings": {
"dest/path":{
"include":"./src/path"
}
}
}

publishOptions

Type: Object

An object containing properties for compilation configuration.

include

Type: String or String[] with a globbing pattern.

{
"include":["wwwroot", "Views"]
}

exclude

Type: String or String[] with a globbing pattern.

Specifies which files to exclude from the build.

For example:

{
"exclude": ["bin/**", "obj/**"]
}

includeFiles

Type: String or String[] with a globbing pattern

{
"includeFiles":[],
}

excludeFiles

Type: String or String[] with a globbing pattern.

{
"excludeFiles":[],
}

builtIns

Type: Object

{
"builtIns":{}
}

mappings

Type: Object

Keys to the object represent destination paths in the output layout.

Values are either a string or an object representing the source path of files to include. The object represtation can have its own include, exclude, includeFiles and excludeFiles sections.

String example:

{
"mappings": {
"dest/file": "./src/file",
"dest/folder/": "./src/folder/**/*"
}
}

Object example:

{
"mappings": {
"dest/file":{
"include":"./src/file"
},
"dest/folder/":{
"include":"./src/folder/**/*"
}
}
}

runtimeOptions

Type: Object

Specifies parameters to be provided to the runtime during initialization.

configProperties

Type: Object

Contains configuration properties to configure the runtime and the framework.

System.GC.Server

Type: Boolean

true to enable server garbage collection; otherwise, false. The default is false.

For example:

{
"runtimeOptions": {
"configProperties": {
"System.GC.Server": true
}
}
}

System.GC.Concurrent

Type: Boolean

true to enable concurrent garbage collection; otherwise, false. The default is false.

For example:

{
"runtimeOptions": {
"configProperties": {
"System.GC.Concurrent": true
}
}
}

System.GC.RetainVM

Type: Boolean

true to put segments that should be deleted on a standby list for future use instead of releasing them back to the operating system (OS); otherwise, false. The default is false.

For example:

{
"runtimeOptions": {
"configProperties": {
"System.GC.RetainVM": true
}
}
}

System.Threading.ThreadPool.MinThreads

Type: Integer

Overrides the number of minimum threads for the ThreadPool worker pool.

{
"runtimeOptions": {
"configProperties": {
"System.Threading.ThreadPool.MinThreads":
}
}
}

System.Threading.ThreadPool.MaxThreads

Type: Integer

Overrides the number of maximum threads for the ThreadPool worker pool.

{
"runtimeOptions": {
"configProperties": {
"System.Threading.ThreadPool.MaxThreads":
}
}
}

framework

Type: Object

Contains shared framework properties to use when activating the application. The presence of this section indicates that the application is a portable app designed to use a shared redistributable framework.

name

Type: String

Name of the shared framework.

{
"runtimeOptions": {
"framework": {
"name": "Microsoft.DotNetCore"
}
}
}

version

Type: String

Version of the shared framework.

{
"runtimeOptions": {
"framework": {
"version": "1.0.1"
}
}
}

applyPatches

Type: Boolean

true to use the framework from either the same or a higher version that differs only in the SemVer patch field. false for the host to use only the exact framework version. The default is true.

{
"runtimeOptions": {
"applyPatches": false
}
}

packOptions

Type: Object

Defines options pertaining to the packaging of the project output into a NuGet package.

summary

Type: String

A short description of the project.

For example:

{
"packOptions": {
"summary": "This is my library."
}
}

tags

Type: String[]

An array of strings with tags for the project, used for searching in NuGet.

For example:

{
"packOptions": {
"tags": ["hyperscale", "cats"]
}
}

owners

Type: String[]

An array of strings with the names of the owners of the project.

For example:

{
"packOptions": {
"owners": ["Fabrikam", "Microsoft"]
}
}

releaseNotes

Type: String

Release notes for the project.

For example:

{
"packOptions": {
"releaseNotes": "Initial version, implemented flimflams."
}
}

iconUrl

Type: String

The URL for an icon that will be used in various places such as the package explorer.

For example:

{
"packOptions": {
"iconUrl": "http://www.mylibrary.gov/favicon.ico"
}
}

projectUrl

Type: String

The URL for the homepage of the project.

For example:

{
"packOptions": {
"projectUrl": "http://www.mylibrary.gov"
}
}

licenseUrl

Type: String

The URL for the license the project uses.

For example:

{
"packOptions": {
"licenseUrl": "http://www.mylibrary.gov/licence"
}
}

requireLicenseAcceptance

Type: Boolean

true to cause a prompt to accept the package license when installing the package to be shown; otherwise, false. Only used for NuGet packages, ignored in other uses. The default is false.

For example:

{
"packOptions": {
"requireLicenseAcceptance": true
}
}

repository

Type: Object

Contains information about the repository where the project is stored.

type

Type: String

Type of the repository. The default value is "git".

For example:

{
"packOptions": {
"repository": {
"type": "git"
}
}
}

url

Type: String

URL of the repository where the project is stored.

For example:

{
"packOptions": {
"repository": {
"url": "http://github.com/dotnet/corefx"
}
}
}

files

Type: Object

include

Type: String or String[] with a globbing pattern.

{
"include":["wwwroot", "Views"]
}

exclude

Type: String or String[] with a globbing pattern.

Specifies which files to exclude from the build.

For example:

{
"exclude": ["bin/**", "obj/**"]
}

includeFiles

Type: String or String[] with a globbing pattern.

{
"includeFiles":[]
}

excludeFiles

Type: String or String[] with a globbing pattern.

{
"excludeFiles":[]
}

builtIns

Type: Object

{
"builtIns":{}
}

mappings

Type: Object

Keys to the object represent destination paths in the output layout.

Values are either a string or an object representing the source path of files to include. The object representation can have its own include, exclude, includeFiles and excludeFiles sections.

String example:

{
"mappings": {
"dest/path": "./src/path"
}
}

Object example:

{
"mappings": {
"dest/path":{
"include":"./src/path"
}
}
}

analyzerOptions

Type: Object

An object with properties used by code analysers.

For example:

{
"analyzerOptions": { }
}

languageId

Type: String

The id of the language to analyze. "cs" represents C#, "vb" represents Visual Basic and "fs" represents F#.

For example:

"analyzerOptions": {
"languageId": "vb"
}

configurations

Type: Object

An object whose properties define different configurations for this project, such as Debug and Release. Each value is an object that can contain a buildOptions object with options specific for this configuration.

For example:

"configurations": {
"Release": {
"buildOptions": {
"allowUnsafe": false
}
}
}

frameworks

Type: Object

Specifies which frameworks this project supports, such as the .NET Framework or Universal Windows Platform (UWP). Must be a valid Target Framework Moniker (TFM). Each value is an object that can contain information specific to this framework such as buildOptions, analyzerOptions, dependencies as well as the properties in the following sections.

For example:

"frameworks": {
"netcoreapp1.0": {
"buildOptions": {
"define": ["FOO", "BIZ"]
}
}
}

dependencies

Type: Object

Dependencies that are specific for this framework. This is useful in scenarios where you cannot simply specify a package-level dependency across all targets. Reasons for this can include one target lacking built-in support that other targets have, or requiring a different version of a dependency than other targets. To see a list of the other properties for this node, see the earlier dependencies section.

For example:

  "frameworks": {
"netstandard1.5": {
"dependencies": {
"Microsoft.Extensions.JsonParser.Sources": "1.0.0-rc2-20221"
}
}
}

frameworkAssemblies

Type: Object

Similar to dependencies but contains reference to assemblies in the GAC that are not NuGet packages. Can also specify the version to use as well as the dependency type. This is used when targeting .NET Framework and Portable Class Library (PCL) targets. You can only build a project with this specified on Windows.

For example:

"frameworks": {
"net451": {
"frameworkAssemblies": {
"System.Runtime": {
"type": "build",
"version": "4.0.0"
}
}
}
}

wrappedProject

Type: String

Specifies the location of the dependency project.

For example:

"frameworks": {
"net451": {
"wrappedProject": "MyProject.csproj"
}
}

bin

Type: Object

This is used wrap a DLL file. You can reference and generate a package containing this DLL.

It contains a single String property, assembly, whose value is the assembly path.

For example:

"frameworks": {
"netcoreapp1.0": {
"bin": {
"assembly": "c:/otherProject/otherdll.dll"
}
}
}

runtimes

Type: Object

List of runtime identifiers (RIDs) supported by the project (used when publishing self-contained deployments).

For example:

"runtimes": {
"win7-x64": {},
"win8-x64": {},
"win81-x64": {},
"win10-x64": {},
"osx.10.11-x64": {},
"ubuntu.16.04-x64": {}
}

userSecretsId

Type: String

Specifies a user secret identifier to be used at development-time. For more information, see Safe storage of app secrets during development.

For example:

{
"userSecretsId": "aspnet-WebApp1-c23d27a4-eb88-4b18-9b77-2a93f3b15119"
}

[asp.net core]project.json(2)的更多相关文章

  1. [asp.net core]project.json(1)

    摘要 前面介绍了使用vs2015新建asp.net core web的内容,这篇文章学习下project.json文件的内容. project.json 原文:https://docs.microso ...

  2. ASP.NET Core的配置(5):配置的同步[ 实例篇]

    ConfigurationBuilder在生成以Configuration对象的时候会利用注册其中的ConfigurationProvider加载原始的配置数据,那么一旦配置源中的数据发生变化,应用程 ...

  3. ASP.NET Core的配置(4):多样性的配置来源[下篇]

    我们在上篇和中篇对配置模型中默认提供的各种ConfigurationProvider进行了深入详尽的介绍,如果它们依然不能满足项目中的配置需求,我们可以还可以通过自定义ConfigurationPro ...

  4. ASP.NET Core的配置(3): 将配置绑定为对象[上篇]

    出于编程上的便利,我们通常不会直接利用ConfigurationBuilder创建的Configuration对象读取某个单一配置项的值,而是倾向于将一组相关的配置绑定为一个对象,我们将后者称为Opt ...

  5. ASP.NET Core的配置(1):读取配置信息

    提到"配置"二字,我想绝大部分.NET开发人员脑海中会立马浮现出两个特殊文件的身影,那就是我们再熟悉不过的app.config和web.config,多年以来我们已经习惯了将结构化 ...

  6. ASP.NET Core的配置(5):配置的同步[设计篇]

    本节所谓的"配置同步"主要体现在两个方面:其一,如何监控配置源并在其变化的时候自动加载其数据,其目的是让应用中通过Configuration对象承载的配置与配置源的数据同步:其二. ...

  7. ASP.NET Core的配置(4):多样性的配置来源[中篇]

    我们在本篇文章中会介绍三种针对物理文件的ConfiguationProvider,它们分别是针对JSON文件的JsonConfiguationProvider,针对XML文件的XmlConfiguat ...

  8. ASP.NET Core的配置(4):多样性的配置来源[上篇]

    较之传统通过App.config和Web.config这两个XML文件承载的配置系统,ASP.NET Core采用的这个全新的配置模型的最大一个优势就是针对多种不同配置源的支持.我们可以将内存变量.命 ...

  9. ASP.NET Core的配置(2):配置模型详解

    在上面一章我们以实例演示的方式介绍了几种读取配置的几种方式,其中涉及到三个重要的对象,它们分别是承载结构化配置信息的Configuration,提供原始配置源数据的ConfigurationProvi ...

随机推荐

  1. 普通用户安装 R 包

    转自 http://bnuzhutao.cn/archives/901 一般 R 语言的书籍上,介绍安装 R 包的方法都是这样的: install.packages("packagename ...

  2. 【BZOJ-2177】曼哈顿最小生成树 Kruskal + 树状数组

    2177: 曼哈顿最小生成树 Time Limit: 10 Sec  Memory Limit: 259 MBSubmit: 190  Solved: 77[Submit][Status][Discu ...

  3. jquery使用历经

    1.动态绑定 当要绑定事件时忽然没有效果了,这种情况出现在通过给通过js拼出来的button绑定的事件,后来查了资料,可以用live事件委托,或者用on,因为是给button绑定事件所以还可以直接写在 ...

  4. 洛谷P1889 士兵站队

    题目描述 在一个划分成网格的操场上, n个士兵散乱地站在网格点上.由整数 坐标 (x,y) 表示.士兵们可以沿网格边上.下左右移动一步,但在同时刻任一网格点上只能有名士兵.按照军官的命令,们要整齐地列 ...

  5. Linux 开机 logo 修改

    从内核被解压到文件系统被挂载,我们看到的经典画面是一个小企鹅.如果嫌小企鹅枯燥,我们可以把它换掉. 1. 准备图片 这里需要的是 ppm 图片,所以,我们需要把常见格式给转换为 .ppm 才能使用.c ...

  6. 使用IDEA进行远程调试

    虽然很早以前就只有Eclipse和IDEA都支持远程调试功能的,但是基本没怎么使用过,今天因为紧急处理一个问题,而本地环境搭建起来比较麻烦,所以就使用了IDEA的远程调试功能.因此写一篇文章记录一下. ...

  7. PL/0编译器(java version) – SymbolTable.java

    1: package compiler; 2: //竟然没有对符号表检查大小,会溢出的. 3:   4: import java.io.IOException; 5:   6: public clas ...

  8. 【转载】Linux 与 BSD 有什么不同?

    原创:Linux中国 https://linux.cn/article-3186-1.html 原创:LCTT https://linux.cn/article-3186-1.html 本文地址:ht ...

  9. JZOJ P1830[9.30]送牛奶

    传送门 临近NOIp,写一些简单题. 二分+BFS,注意的是要把数组开小点,有效减少memset的时间. //OJ 1830 //by Cydiater //2016.9.22 #include &l ...

  10. SVN Access to ‘/svn/Test/!svn/me’ forbidden,不能更新解决办法

    今天上班,使用公司配置的电脑进行项目的更新.SVN报如下错误, SVN Access to '/svn/Test/!svn/me' forbidden,不能更新解决办法 很有意思: 开始以为自己的SV ...