我的设置:
-- Linux --
经销商 ID:Linuxmint
描述:Linux Mint 21
发布时间:21
代号:凡妮莎
-- Dotnet SDK--
6.0.402 [/home/gilmar/.dotnet/sdk]
-- Dotnet 运行时 --
Microsoft.AspNetCore.App 6.0.10 [/home/gilmar/.dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 6.0.10 [/home/gilmar/.dotnet/shared/Microsoft.NETCore.App]
-- Dotnet 工具 --
ID do Pacote Versão Comandos
---------------------------------------
dotnet-ef 6.0.10 dotnet-ef
当我尝试运行命令 dotnet ef 时遇到问题。当我这样做时,返回以下消息:
You must install .NET to run this application.
App: /home/gilmar/.dotnet/tools/dotnet-ef
Architecture: x64
App host version: 6.0.10
.NET location: Not found
Learn about runtime installation:
https://aka.ms/dotnet/app-launch-failed
Download the .NET runtime:
https://aka.ms/dotnet-core-applaunch?missing_runtime=true&arch=x64&rid=linuxmint.21-x64&apphost_version=6.0.10
我修改了我的文件 .bashrc 添加以下行:
export PATH="$PATH:$HOME/.dotnet"
export PATH="$PATH:$HOME/.dotnet/tools/"
我的目录中的文件夹:
gilmar@hp ~ $ whereis dotnet
dotnet: /home/gilmar/.dotnet/dotnet
gilmar@hp ~ $ whereis dotnet-ef
dotnet-ef: /home/gilmar/.dotnet/tools/dotnet-ef
我可以正常运行 dotnet Restore、dotnet new、dotnet build 等,但无法运行 dotnet ef
我尝试过:
dotnet ef
dotnet-ef
dotnet dotnet-ef
dotnet dotnet ef
我使用 Microsoft 的脚本安装了 dotnet,网址为 https://dot.net/v1/dotnet-install.sh
有人可以帮助我吗? 谢谢。
TLDR:要使
dotnet-ef
工具正常工作,请按照步骤@ https://learn.microsoft.com/en-us/dotnet/core/tools/global-tools#install-a-local-tool
由于某种原因,全局工具看不到 dotnet“位置”。
.NET location: Not found
我正在 Linux Mint 22 Cinnamon 上运行。
修复/解决方法:
在解决方案目录中,在终端中运行
dotnet new tool-manifest
在 .config/dotnet-tools.json
创建文件
dotnet tool install dotnet-ef
修改配置文件一些内容
dotnet tool restore
不确定是否需要这样做,但我做到了。
dotnet dotnet-ef
#重要这与单独运行dotnet-ef
不同。
然后您应该会看到来自 dotnet-ef 的可爱帮助消息。 此时您可以开始创建迁移。 在整个崩溃之后我一直在使用的示例命令:
dotnet dotnet-ef migrations add [your_migration_name] --project [path_to_database_project].csproj --startup-project [path_to_startup_project].csproj --output-dir [sub_path_for_migrations]
我遇到了同样的问题,我尝试了相同的命令,解决方案是重新删除所有内容并重新安装,然后不要忘记:
导出 PATH="$PATH:$HOME/.dotnet" 导出 PATH=“$PATH:$HOME/.dotnet/tools/”
这解决了我的问题!