我正在 Linux lubuntu 22.04 版本中安装 C# 和 dotnet 6.0 SDK。
遵循以下建议微软手动安装的文档,例如:
mkdir -p $HOME/dotnet && tar zxf dotnet-sdk-6.0.400-linux-x64.tar.gz -C $HOME/dotnet
export DOTNET_ROOT=$HOME/dotnet
export PATH=$PATH:$HOME/dotnet
上面的脚本 dotnet 仅在打开的会话中运行,这意味着如果打开另一个终端会话,应再次运行相同的脚本才能使用 dotnet。
同一文档建议在文件中包含以下脚本~/.bashrc
:
export PATH=$PATH:$HOME/dotnet
export DOTNET_ROOT=$HOME/dotnet
但无论如何它都不起作用。
之前我已经在同一个~/.bashrc
文件中使用了 JAVA SDK,其中有一个名为PATH
.我没有找到任何内容来解释这个变量是否可以订阅另一个变量,我如何不再使用 Java,我删除了包含 Java 变量的行。虽然,它不起作用。我发现了类似的问题这里,但我已经在使用给定的解决方案。
最后一次尝试是在变量值中添加引号,但什么也没做。
有人已经遇到过类似的问题吗?
答案1
首先,确认 dotnet 文件夹的路径正确。您可以通过打开文件管理器或运行ls -a1 --group-directories-first
.如果看起来没问题,请尝试将其添加到您的.bashrc
:
export DOTNET_ROOT="/home/YOURUSER/dotnet"
export PATH="$DOTNET_ROOT:$PATH"
关闭终端并重新打开它,然后输入echo $PATH
。在结果中,它应该指向 dotnet 的安装位置。
不过,有一部分不清楚你的问题:你是否安装了 Java 并希望它$PATH
与 dotnet 一起出现在你的背部,或者你只是想知道如何向你的$PATH
变量添加更多路径?如果是后者,您可以使用冒号 ( ) 分隔各个程序的路径:
。请注意,留下尾随冒号可能会造成安全风险。
export PATH="$DOTNET_ROOT:/home/YOURUSER/path/to/program1:/home/YOURUSER/path/to/program2:$PATH"
另一种选择是将每个路径分配给不同的变量,然后将其调用到$PATH
.像这样
export MY_PROGRAM1="path/to/program1"
export MY_PROGRAM2="path/to/program2"
export PATH=$MY_PROGRAM1:$MY_PROGRAM2:$PATH"
编辑:重新启动机器以 100% 确定一切正常。