web-dev-qa-db-ja.com

Install-Package&NuGet Packageのインストール場所-どこにインストールされていますか?

> nuget                                                                                                         
nuget : The term 'nuget' is not recognized as the name of a cmdlet, function, script file, or operable program. ...

> find-package -name nuget | Install-package -verbose
VERBOSE: Skipping installed package NuGet 1.3.3.

> nuget                                                                                                         
nuget : The term 'nuget' is not recognized as the name of a cmdlet, function, script file, or operable program. ...

インストールされている場合、どこにインストールされていますか?ドライブ全体を検索しましたが、手動でインストールしたものを除いて、nuget.exeのコピーは他に存在しません(ただし、$ PATHにはないため、それを参照していないことを確認しました-名前をダブルチェックに変更しました! )。


質問の更新

私はJava=の経験から期待しており、間違った質問をしているようです。

私のユースケースは以下です。背景から。

  • Java開発者としての経験が10年あるのですが、MS App開発は初めてです。
  • (私が現在いるところ)dotnet CLIで動作しない古いバージョンのASP.Netアプリケーションがあります。
  • ここのチームには、ハードコードされた(保存された)依存関係があり、Visual Studioインストールなどの他の依存関係を見つけることを期待してビルドシステムを作成しました。私のバックグラウンドがあるので、特にスケーリングに関しては、この期待は好きではありません。
  • 既存のビルドシステムはMSBuildを使用し、.targetsファイルを使用します

私の使用例は、定義済みの(事前にダウンロードされていない)依存関係を使用して、一部の主要なツールを除いてビルド環境を想定していないサーバー上でビルドを実行することです。 Visual StudioはIDEであり、サーバーでこれが見つかるとは思わない。

packages.configファイルに依存関係を作成しました。ビルドスクリプトにnuget.exeを追加したいと思います(現在はbuild.batですが、PowerShellの同等物が推奨されます)。

たくさんの情報があることは知っていますが、この分野での知識の欠如が、私がやりたいことが2012年頃のどこかに根付いているという事実に関係していると思います(私は推測しています)、何をすべきかわかりません。

私が知っていることを考えると、私がしたいことは次のことだけだと思いました:

  1. build.bat / build.ps1スクリプトの最初にnugetをインストールします
  2. nugetを実行して、定義済みの依存関係をインストールします
    • nugetを手動でダウンロードし、nuget restoreを実行して、私が望んでいることを確認しました
  3. 以前と同じようにビルドを実行します

この質問をする最初の試みは、このリストの#1に取り組むことでした。 powershellを使用してnuget.exeをダウンロードし、ビルドスクリプトがnuget restoreを呼び出すことができると思いました。

6
HankCa

インストールされている場合、どこにインストールされていますか?

Windowsマシンを使用している場合、PowerShellパッケージは通常C:\Program Files\WindowsPowerShell\Modules(グローバル)またはC:\Users\%USERNAME%\Documents\WindowsPowerShell\Modules(CurrentUser)にインストールされます。

nuget.exeは具体的にインストールされます。 NuGet CLIリファレンス(MSDocs) からの引用:

Nuget.exeのインストール

  1. MacおよびLinuxでは、Mono 4.4.2以降をインストールします。
  2. Nuget.org/downloadsにアクセスして、必要なNuGetのバージョンを選択します。
  3. 各ダウンロードはnuget.exeファイルです。選択したフォルダーにファイルを保存するようにブラウザーに指示します。ファイルはインストーラーではありません。ブラウザから実行しても何も表示されません。
  4. nuget.exeを配置したフォルダーをPATH環境変数に追加して、どこからでもCLIツールを使用できるようにします。

これはやや混乱しているようですね。 3つの異なるパッケージ/アプリケーションがあることに注意してください。

  1. NuGet CLI (参照のように)
  2. NuGet PowerShellパッケージ /パッケージマネージャーコンソール(あなたが探しているものだと思います)は独自にエクスポートします Install-Package
  3. PowerShellの PackageManagement パッケージ(これも Install-Package コマンドレット)
1
Clijsters

更新された質問をもう一度読んでも、ビルドサーバーにnuget.exeをインストールすることは問題ではないと思います。または、ドッカーなどを使用します。 https://blog.alexellis.io/3-steps-to-msbuild-with-docker/

@Clijstersが正しく指摘したように、nugetをダウンロードする手順があります。そして、これは最も賢明なことです。私は、Power Shellがそれをインストールする機能と少し混乱していました。しかし、それはnuget.exeではありません。

私が作業している環境はDockerをサポートしていない可能性が高いため、現時点ではそれを追求しません。

0
HankCa