关于mac下vscode无法自动补全unity代码的问题

环境:

系统:macOS BigSur

版本:11.2.3

芯片:apple M1

untiy版本: 2021.3.1

vscode版本:1.66.2

vscode插件:C#、C# Extensions、Debug for Unity、Unity Code Snippets、Unity Tools

问题:

在macos系统下,vscode编辑unity代码时,无法自动补全。

解决过程:

网上很多这种情况,提供的解决方案基本这几个:

  1. 检查unity项目设置里面framework的版本 在打开的项目中找到Assembly-CSharp.csproj和Assembly-CSharp-Editor.csproj文件,然后分别都找到下面这一行<TargetFrameworkVersion>v4.7.1</TargetFrameworkVersion> 去下载对应的版本,我是去下载v4.7.1,然后安装.重启VsCode.就会发现它一直可以代码了
  2. unity中Preference设置为vscode
  3. vscode中:ctrl + shift + P 快捷键输入:OmniSharp: select project选择现在项目的.sln文件(mac下为mac + shift + P)

按照上面步骤操作并未解决问题。

解决方案:

于是我将vscode启动时的报错信息,放到google中查询。

stack overflow上有人给出方案:在vscode下C#的扩展设置中修改以下几个参数

"omnisharp.useGlobalMono": "always",

"omnisharp.monoPath": "/Library/Frameworks/Mono.framework/Versions/Current",

修改之后,问题解决,代码可以自动补全。

经验分享 程序员 微信小程序 职场和发展