8

ASP.NET vNext クラス ライブラリの NuGet パッケージを作成したいと考えています。どうすればそれを行うことができますか?があることは承知していますがkpm build、kpm のダウンロード先などに関するガイドが見つかりませんでした。

また、その NuGet パッケージ (または DLL) を取得した後、それをローカル マシンから vNext プロジェクトに追加するにはどうすればよいですか?

4

4 に答える 4

5

Kpm は、新しい KRuntime のパッケージ マネージャーです。KRuntime コマンド ライン ユーティリティを開発者のコ​​ンピューターにインストールする方法については、aspnet ホーム リポジトリを参照してください。kvm と KRuntime のバージョンを設定すると、kpm も利用できるようになります。

kpm buildこれで、クラス ライブラリ プロジェクトの場所で実行できます。出力は次のようになります。

kpm build src\ClassLibrary1\
ClassLibrary1 -> C:\Users\username\Documents\Visual Studio 14\Projects\WebApplication1\src\ClassLibrary1\bin\Debug\ClassLibrary1.1.0.0.nupkg
ClassLibrary1 -> C:\Users\username\Documents\Visual Studio 14\Projects\WebApplication1\src\ClassLibrary1\bin\Debug\ClassLibrary1.1.0.0.symbols.nupkg

Build succeeded.
    0 Warnings(s)
    0 Error(s)

Time elapsed 00:00:01.7556414

クラス プロジェクトへの参照を追加する最も簡単な方法は、同じソリューション内にあると仮定して、project.json 内で行うことです。ClassLibrary1 というクラス ライブラリを参照する Web アプリケーションの project.json の例を次に示します。

{
    "webroot" : "wwwroot",
    "exclude": "wwwroot/**/*.*",
    "dependencies": {
        "Microsoft.AspNet.Server.IIS": "1.0.0-alpha4",
        "ClassLibrary1": ""
    },
    "frameworks" : {
        "aspnet50" : { },
        "aspnetcore50" : { }
    }
}

NuGet フィードをセットアップする場合は、NuGetの公式ドキュメントを読んで、その方法を確認できます。kpm buildの出力をNuGet フィードにコピーします。

注: VS14 CTP4 は、KRuntime の alpha4 でのみ機能します。エラーが発生することなく vNext に VS14 を使用したい場合は、KRuntime をバージョン 1.0.0-alpha4 にダウングレードする必要があります。

于 2014-10-13T11:08:12.883 に答える
5

クラス ライブラリから NuGet パッケージを作成する

Visual Studio 2015 RC以降を使用している場合: クラス ライブラリ プロジェクトのプロパティに移動し、Buildタブを開いてProduce outputs on buildオプションを確認します。

ここに画像の説明を入力

NuGet パッケージは{SolutionDir}\artifacts\bin\{ProjectName}\{Configuration}、各プロジェクト ビルドのディレクトリに作成されます。

コマンドラインを使用する場合:

  1. DNVMとがインストールされていることを確認してくださいDNX(手順については、 ASP.NET ホーム リポジトリを参照してください)。
  2. dnu packプロジェクト ディレクトリで実行します。NuGet パッケージは{ProjectDir}\bin\{Configuration}、デフォルトでディレクトリに作成されます。

パッケージ化されたクラス ライブラリの使用

同じソリューションの別のプロジェクトでクラス ライブラリを使用するには、Visual Studio の通常のプロジェクト参照として、または のdependenciesプロパティに追加しproject.jsonます。

"dependencies": {
  "ClassLibrary1": ""
}

ライブラリを他のソリューションで使用するには、NuGet パッケージをnuget.orgまたはその他の NuGet フィードに公開し、Visual Studio ( References~> Manage NuGet Packages...) を使用してプロジェクトに追加するか、のdependenciesプロパティに追加しますproject.json

于 2015-06-18T19:18:35.983 に答える
0

コメントするには十分な担当者がいません。

2016 年 8 月 8 日に投稿された移行ドキュメントによると、whyleee の回答を更新するには、DNX ツールセットの一部であったツールが dotnet CLI ツールに置き換えられました。

そのため、デフォルトで bin/[Configuration] ディレクトリにナゲットとシンボル パッケージが作成されますdnu pack。ほとんどのコマンドを に置き換えdotnet packます。dnudotnet

nuget パッケージをローカルに追加するには、この回答を参照してください。

于 2016-08-08T16:59:54.490 に答える