浏览器标题切换
浏览器标题切换end

dotnet升级版本3.1/5.0->6.0 for Mac

场景

在项目打包部署到服务器上时,因为用的是Ubuntu22.04 LTS版本,目前该版本只支持dotnet6.0,所以只能把当前本地项目从5.0升级到6.0。包括本地其他3.1的项目,由于只能支持到今年年底,所以均进行了一次升级。

  • Mac支持:

  • Ubuntu支持:

csporj文件修改

打开项目对应的 xx.csporj 文件,把下面的5.0修改成6.0。重新build运行项目后,如果本地有6.0的sdk,则直接能运行,否则进行一下步骤的sdk安装和配置。

安装sdk

  1. 官网下载.NET 6.0:https://dotnet.microsoft.com/en-us/download/dotnet/6.0

  2. 根据Mac(或其他系统)处理器架构选择:Intel芯片-x64,M1-Arm64

  3. 选择 Installers 或者 Binaries 包,区别如下:

    • Installers:安装后是 pkg 包,下载完后点击可以直接安装

    • Binaries:安装后是 tar.gz 包,是一个二进制包,下载后需要手动解压并且手动指定安装目录

    • Source:需要在本地编译才能运行

PS:我安装的是 pkg 包,解压后如果系统是x64架构,则默认安装在 /usr/local/share/dotnet/x64/dotnet/ 目录;如果是arm64架构,则默认安装在 /usr/local/share/dotnet/ 目录下。

环境配置

官方文档:https://docs.microsoft.com/en-us/dotnet/core/install/macos

  1. 判断本机环境变量文件是哪个: echo $SHELL

    • 输出 /bin/zsh,则配置的环境变量文件为 ~/.zshrc

    • 输出 /bin/bash,则配置的环境变量文件为 ~/.bash_profile

  2. 如果之前安装过,则 dotnet --info 查看以前安装的路径,我的是 /usr/local/share/dotnet/,则后续都安装在该目录下,否则执行tar解压可能会报 Can't restore time 错误。如果之前没安装过,则跳过该步骤。

  3. 如果下载的是 pkg 包,则进入环境变量文件中 vim ~/.zshrc,在文件中添加如下配置:(我用的是这种)

    • PS:解压 pkg 包后如果系统是x64架构,则默认安装在 /usr/local/share/dotnet/x64/dotnet/ 目录;如果是arm64架构,则默认安装在 /usr/local/share/dotnet/ 目录下。

    • 可以将该包移动到指定路径下,我指定的是:/usr/local/share/dotnet/

    export DOTNET_ROOT=$/usr/local/share/dotnet/
    export PATH=$PATH:$HOME/dotnet
    
    # 该行添加到文件末尾
    export DOTNET_ROOT=$HOME/dotnet
    
  4. 如果下载的是 tar.gz 包,则进入环境变量文件中 vim ~/.zshrc,在文件中添加如下配置:(详情见微软官方文档)

    DOTNET_FILE=dotnet-sdk-6.0.100-osx-x64.tar.gz
    export DOTNET_ROOT=$(pwd)/dotnet
    mkdir -p "$DOTNET_ROOT" && tar zxf "$DOTNET_FILE" -C "$DOTNET_ROOT"
    export PATH=$PATH:$DOTNET_ROOT
    
    # 如果PATH声明已经存在,则添加: $HOME/dotnet  到PATH路径末尾
    # 如果之前没有声明过PATH,则添加:
    PATH=$PATH:$HOME/dotnet
    
    # 该行添加到文件末尾
    DOTNET_ROOT=$HOME/dotnet 
    
  5. 执行 source ~/.zshrc 使文件生效

  6. 输出路径查看是否配置成功 echo $PATH

  7. 查看是否安装了指定版本:dotnet --version

posted @ 2022-08-21 15:41  抓水母的派大星  阅读(612)  评论(0编辑  收藏  举报