ASP.NET5project.json脚本命令的完整列表是什么?(Visual Studio 2015)

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (26)

我已经查看了project.jsonASP.Net 5团队Wiki条目,以确定哪些脚本命令可用,并且目前列出了以下内容:

{
  "scripts": {
    "prebuild": "echo before building",
    "postbuild": "echo after building",
    "prepack": "echo before packing",
    "postpack": "echo after packing",
    "prerestore": "echo before restoring packages",
    "postrestore": "echo after restoring packages"
  }
}

这些都很直接,容易理解; 然而在Visual Studio中,只有prerestore和postrestore事件似乎实际上会触发。

默认(测试版6) Visual Studio 2015模板添加以下脚本命令,该命令不在官方列表中:

  "scripts": {
    "prepublish": [ "npm install", "bower install", "gulp clean", "gulp min" ]
  }

此外,似乎还有其他未公开的命令,我从一位同事创建的示例项目中继承了这些命令:

  "scripts": {
    "first-run": "npm install -g gulp bower && npm run update",
    "prepare": [ "npm install && npm prune && bower install && bower prune && gulp default" ],
    "prepublish": [ "npm install", "bower install", "gulp default" ],
    "update": "npm install && npm prune && bower install && bower prune"
  }

这些似乎工作(他们执行),但我的同事和我无法找到文件解释:

  1. 如果它们是有效的,或者被弃用。
  2. 如果它们特定于Visual Studio(我相信preublish仅适用于Visual Studio)
  3. 确切地说,当它们被执行时,以及它们如何被Visual Studio识别(名称看起来很明显,但我更愿意确定)。

为了进一步混淆事项,Visual Studio 2015 intellisense显示了其他不在官方列表中的命令:

是否有一个有效的project.json脚本命令列表,它们的用法等,特别是对于Visual Studio 2015?

提问于
用户回答回答于

微软正在逐步淘汰project.json并返回csproj。

.NET作为一个平台的关键原则之一是我们希望我们的开发人员能够跨所有.NET应用程序模型(WinForms,WPF,UWP,ASP.NET,iOS,Android等)共享代码。这提出了一系列问题,而project.json非常适合构建Web应用程序和类库,因此它不允许统一其他应用程序模型。 看完我们的选择之后,显然将.NET Core项目移至.csproj / MSBuild会更容易,因此所有.NET项目都使用相同的工具和构建系统。

从这里引用报价

NuGet博客更新

Visual Studio编辑器和NuGet扩展支持最新的DNX project.json模式

project.json架构列出了以下可用脚本命令:

        "scripts": {
        "type": "object",
        "description": "Scripts to execute during the various stages.",
        "properties": {
            "precompile": { "$ref": "#/definitions/script" },
            "postcompile": { "$ref": "#/definitions/script" },
            "prepack": { "$ref": "#/definitions/script" },
            "postpack": { "$ref": "#/definitions/script" },
            "prepublish": { "$ref": "#/definitions/script" },
            "postpublish": { "$ref": "#/definitions/script" },
            "prerestore": { "$ref": "#/definitions/script" },
            "postrestore": { "$ref": "#/definitions/script" },
            "prepare": { "$ref": "#/definitions/script" }
        }
    },

扫码关注云+社区

领取腾讯云代金券