Ubuntu22.04+Rider+dotnet项目启动报错

环境

系统:ubuntu22.04
软件:Rider 2024.2.2(通过JetBrains Toolbox软件下载启动)

问题描述

通过图形化界面启动Rider后,打开项目,点击运行按钮,报错找不到dotnet位置,如下:

/home/luz/Workspace/Rider/ElsaCore.Server/bin/Debug/net8.0/ElsaCore.Server
You must install .NET to run this application.

App: /home/luz/Workspace/Rider/ElsaCore.Server/bin/Debug/net8.0/ElsaCore.Server
Architecture: x64
App host version: 8.0.8
.NET location: Not found

Learn more:
https://aka.ms/dotnet/app-launch-failed

Download the .NET runtime:
https://aka.ms/dotnet-core-applaunch?missing_runtime=true&arch=x64&rid=linux-x64&os=ubuntu.22.04&apphost_version=8.0.8

上网查找,rider设置正确。在这里插入图片描述
终端运行dotnet命令也没问题。

➜  ~ dotnet --info
.NET SDK:
 Version:           8.0.401
 Commit:            811edcc344
 Workload version:  8.0.400-manifests.b6724b7a
 MSBuild version:   17.11.4+37eb419ad

运行时环境:
 OS Name:     ubuntu
 OS Version:  22.04
 OS Platform: Linux
 RID:         linux-x64
 Base Path:   /usr/share/dotnet/sdk/8.0.401/

已安装 .NET 工作负载:
配置为在安装新清单时使用 loose manifests。
没有要显示的已安装工作负载。

Host:
  Version:      8.0.8
  Architecture: x64
  Commit:       08338fcaa5

.NET SDKs installed:
  8.0.401 [/usr/share/dotnet/sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 8.0.8 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 8.0.8 [/usr/share/dotnet/shared/Microsoft.NETCore.App]

Other architectures found:
  None

Environment variables:
  DOTNET_ROOT       [/usr/share/dotnet]

global.json file:
  Not found

Learn more:
  https://aka.ms/dotnet/info

Download .NET:
  https://aka.ms/dotnet/download

尝试:

  1. 终端启动项目dotnet run,运行没有问题。
  2. 终端启动rider软件rider &,运行按钮启动也没问题。

解决办法

最后查找发现原因是使用的终端是zsh,环境变量的配置在~/.zshrc文件中。
而Rider 在 Linux 上通常使用 /bin/bash 作为默认 Shell。

1.将dotnet环境配置在profile文件中

将环境变量添加进~/.profile/etc/profile文件中,重启生效。

export DOTNET_ROOT=/usr/share/dotnet
export PATH=$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools:$HOME/.dotnet/tools

启动Rider,即可成功运行项目。

2.修改图形化启动文件desktop

文件名称:jetbrains-rider-0fd95c07-0f29-4d76-ba90-e9a2a2862dff.desktop
文件路径:$HOME/.local/share/applications

Exec="$HOME/.local/share/JetBrains/Toolbox/apps/rider/bin/rider %u"替换为Exec=env zsh -c "source ~/.zshrc && $HOME/.local/share/JetBrains/Toolbox/apps/rider/bin/rider %u"

[Desktop Entry]
Name=Rider 2024.2.2
Exec="$HOME/.local/share/JetBrains/Toolbox/apps/rider/bin/rider" %u
Version=1.0
Type=Application
Categories=Development;IDE;
Terminal=false
Icon=$HOME/.local/share/JetBrains/Toolbox/apps/rider/bin/rider.svg
Comment=A cross-platform .NET IDE
StartupWMClass=jetbrains-rider
StartupNotify=true

重新启动Rider后,点击运行按钮,成功启动项目。

这个不行,会被重新覆盖为原来的配置文件。

如果是自定义desktop文件,可以参考。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值