之前用的fvm,不知道為什么突然不好使了,于是自己補(bǔ)幾個(gè)簡(jiǎn)單的Shell。原理就是鏈接文件夾。
腳本文件【flutter_use.sh】
#!/bin/bash
rm -rf current
version="${1}"
echo "change to ${1}"
ln -s versions/$version current
寫了一個(gè)可以針對(duì)某個(gè)工程執(zhí)行此命令的腳本
/opt/fvm/initProjectFlutterSDK.sh
#!/bin/bash
file_name=setFlutterSDK.sh
target_dir="${1}"
sdk_version="${2}"
script_dir=$(cd $(dirname $0);pwd);
echo $target_dir;
echo $script_dir;
if [ -d "$target_dir" ]; then
if [ "$target_dir" == "$script_dir" ];
then
echo "it's same dir";
else
rm $target_dir/$file_name;
echo "rm $target_dir/$file_name";
fi
fi
echo "#!/bin/bash" >> $target_dir/$file_name
echo "/opt/fvm/flutter_use.sh $sdk_version" >> $target_dir/$file_name
chmod 777 $target_dir/$file_name
$target_dir/$file_name
在工程目錄下執(zhí)行,就可以在工程目錄下生成腳本文件setFlutterSDK.sh
******@******deMacBook-Pro komodo % /opt/fvm/initProjectFlutterSDK.sh [當(dāng)前工程目錄(pwd可獲取)] [版本名](在/opt/fvm/versions下的 版本名)
終端運(yùn)行 ./setFlutterSDK.sh 設(shè)置當(dāng)前工程使用的sdk版本
【如果開啟了多個(gè)工程且鏈接的SDK版本不同時(shí),要先切換sdk再build】
環(huán)境變量
export FLUTTER_ROOT=/opt/fvm/current
export FVM_HOME=/opt/fvm
export PATH=$PATH:$FLUTTER_ROOT/bin/cache/dart-sdk/bin
export PATH=$PATH:$FLUTTER_ROOT/bin
先自行從官網(wǎng)下載sdk,放在了/opt/fvm/versions中。
終端運(yùn)行 /opt/fvm/flutter_use.sh [name] 可切換全局的Flutter版本
目錄結(jié)構(gòu)如下

2031649401307_.pic.jpg