AVE*_*imi 6 .net-core asp.net-core
在尝试向 mac 上的 .net core 应用程序添加身份验证时,使用以下命令:
dotnet aspnet-codegenerator identity -h
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
Macintosh-2:Website abd$ dotnet aspnet-codegenerator Identity -h 发生致命错误,找不到所需的库 libhostfxr.dylib。如果这是一个独立的应用程序,则该库应存在于 [/Users/abd/.dotnet/tools/.store/dotnet-aspnet-codegenerator/2.2.3/dotnet-aspnet-codegenerator/2.2.3/tools/ 中netcoreapp2.1/any/]。如果这是依赖于框架的应用程序,请将运行时安装在默认位置 [/usr/local/share/dotnet] 或使用 DOTNET_ROOT 环境变量指定运行时位置。中号
小智 8
对于 Mac M1 处理器,.NET 库不位于默认安装位置"usr/local/share/dotnet";而是在其子目录之一中"./x64"。
您必须设置DOTNET_ROOT环境变量以指向该子目录。
export DOTNET_ROOT=/usr/local/share/dotnet/x64
我猜想这个相同的解决方案可以扩展到 M1 处理器之外,只要您将 DOTNET_ROOT 设置为包含 libhostfxr.xx 的任何目录
这为我解决了这个问题:
dotnet tool uninstall dotnet-ef --global
dotnet tool install dotnet-ef --global -a arm64
Run Code Online (Sandbox Code Playgroud)
Dotnet 可执行文件将出现在 $DOTNET_ROOT 中,您可以使用which dotnet或找到它
readlink $(which dotnet)
Run Code Online (Sandbox Code Playgroud)
成功的 dotnet 安装将有该libhostfxr.dylib文件$DOTNET_ROOT/host/fxr/$version/
如果是这样,这是一个权限问题,使用 sudo 运行即可。
sudo dotnet aspnet-codegenerator identity -h
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14370 次 |
| 最近记录: |