dotnet run/build - 如何指定包的位置?
dotnet run/build - How to specify where the packages are?
因为我正在使用 CI 集成,所以我不能(也不想)将包放入共享用户文件夹。相反,我希望它们在实际文件夹中恢复(想想 node_modules)。
所以这很简单,我 运行 dotnet restore --no-cache --packages Packages
并且它工作正常。包已恢复并且位于正确的文件夹中。
但是当我 运行 dotnet build -c Release
或 dotnet run -c Release
时它找不到任何包。
/var/www/website/project.json(15,50): error NU1001: The dependency Microsoft.AspNetCore.Hosting >= 1.0.0 could not be resolved.
那么如何确保 dotnet 知道在哪里寻找这个特定项目的包?
这是我的文件夹在执行命令时的样子。
bin
bundleconfig.json
NuGet.config
Packages
project.json
Properties
web.config
bower.json
Controllers
obj
Program.cs
project.lock.json
ViewsWeb.xproj
好的,所以现在没有这样的选项,实际上 --packages
似乎是一些遗留参数。
无论如何,为了让它工作我们需要设置环境变量NUGET_PACKAGES=/var/www/website/Packages
当然这很糟糕,我无法全局设置它,但是我可以按进程设置它(例如,如果我使用 systemd 启动应用程序)。
因为我正在使用 CI 集成,所以我不能(也不想)将包放入共享用户文件夹。相反,我希望它们在实际文件夹中恢复(想想 node_modules)。
所以这很简单,我 运行 dotnet restore --no-cache --packages Packages
并且它工作正常。包已恢复并且位于正确的文件夹中。
但是当我 运行 dotnet build -c Release
或 dotnet run -c Release
时它找不到任何包。
/var/www/website/project.json(15,50): error NU1001: The dependency Microsoft.AspNetCore.Hosting >= 1.0.0 could not be resolved.
那么如何确保 dotnet 知道在哪里寻找这个特定项目的包?
这是我的文件夹在执行命令时的样子。
bin
bundleconfig.json
NuGet.config
Packages
project.json
Properties
web.config
bower.json
Controllers
obj
Program.cs
project.lock.json
ViewsWeb.xproj
好的,所以现在没有这样的选项,实际上 --packages
似乎是一些遗留参数。
无论如何,为了让它工作我们需要设置环境变量NUGET_PACKAGES=/var/www/website/Packages
当然这很糟糕,我无法全局设置它,但是我可以按进程设置它(例如,如果我使用 systemd 启动应用程序)。