17

project.jsonのASP.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 では、復元前および復元後のイベントのみが実際に発生するようです。prebuild と postbuild はそうではありません。

デフォルト(ベータ 6)の Visual Studio 2015テンプレートでは、次のScript Commandが追加されますが、これは公式のリストにはありません。

  "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に固有のものである場合(事前公開はVisual Studio専用だと思います)
  3. それらが実行される正確な時期と、Visual Studio によってどのように認識されるか (名前は明白に思えますが、私は確実であることを好みます)。

問題をさらに混乱させるために、Visual Studio 2015 の IntelliSense は、公式のリストにない他のコマンドを示しています。

ここに画像の説明を入力

特に Visual Studio 2015の有効なproject.json Script Commands、その使用法などのリストはありますか?

4

1 に答える 1

5

2016 年 5 月 24 日更新:

Microsoft は project.json を段階的に廃止し、csproj に戻しています。

プラットフォームとしての .NET の重要な原則の 1 つは、開発者がすべての .NET アプリケーション モデル (WinForms、WPF、UWP、ASP.NET、iOS、Android など) でコードを共有できるようにすることです。これには一連の問題がありました。project.json は Web アプリケーションとクラス ライブラリの構築には優れていましたが、他のアプリ モデルの統合はできませんでした。

...

私たちの選択を検討した結果、.NET Core プロジェクトを .csproj/MSBuild に移動した方が簡単であることが明らかになりました。これにより、すべての .NET プロジェクトが同じツールとビルド システムを使用できるようになります。

ここから引用


2016 年 3 月 30 日の Nuget ブログの更新では、次のように述べられています。

DNX の最新の project.json スキーマは、Visual Studio エディターと NuGet 拡張機能でサポートされています。

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" }
        }
    },
于 2016-04-11T11:37:57.463 に答える