VS Code IntelliSense 不适用于 Unity。为啥?
Posted
技术标签:
【中文标题】VS Code IntelliSense 不适用于 Unity。为啥?【英文标题】:VS Code IntelliSense does not work with Unity. Why?VS Code IntelliSense 不适用于 Unity。为什么? 【发布时间】:2020-06-06 20:18:49 【问题描述】:VS Code IntelliSense 不适用于 Unity。为什么?
我正在使用 Unity 和 VS Code。当我输入时,我没有得到任何与 Unity 相关的建议。例如。一旦我输入this.
,我就没有收到建议的gameObject
:
另一个例子是我不能去MonoBehaviour
定义:
我看到this 的问题。因此,我检查了答案中推荐的所有扩展都已安装:
扩展安装没有帮助。有人可以帮忙解决这个问题吗?
我正在使用 Unity 2019.3.2f1。
如果在 Unity 编辑器中我转到 Window - Package Manager - 搜索 Visual Studio Code Editor 我看到它在那里:
实际上我看不到 System 的定义。所以,我认为 VS Code 方面应该有问题:
另外,我关注了the video。它没有帮助。视频下方有评论:
对于仍然无法使用自动完成功能的人,请尝试安装“.net framework 4.7.1 开发人员包”。
就我而言,我使用的是 Unity 2019.1.2,并安装了“.net framework 4.7.2.”附带的 dotnet core 2.2。显然 Unity 2019.1.2 需要框架 4.7.1。您可以通过查看 Assembly-CSharp.csproj 文件找到所需的 .net 框架版本
我遵循了评论建议。我检查了我在TargetFrameworkVersion
中指定的版本。它是4.7.1
。所以,我下载了4.7.1
。在安装版本时它告诉我它已经安装以及我是否想重新安装它。我重新安装了它,但它仍然没有帮助。
【问题讨论】:
这可能会帮助你***.com/questions/42597501/… @this.girish,谢谢你的评论,但我问的是 VS Code,而不是 VS。 哦,我的错!检查forum.unity.com/threads/…链接,用户Kurolox回答。 @IanKemp,@0xBFE1A8 试图帮助我。我认为如果他一无所获,那将是不公平的。所以,你不认为如果他发布答案是个好主意吗?实际上,当有人花时间尝试在 cmets 中提供帮助(实际上是在帮助)并且之后没有表现出感激之情时,我经常在这里看到它。这可能会阻止某人下次花时间和帮助。你确定我应该发布我的答案吗? @qqqqqqq 你想到有人帮助你真的很棒,但归根结底,你是找到解决方案的人。我的建议是自己发布答案,并在其中提到 0xBFE1A8 关于查看内容的建议可以帮助您找到解决方法。我觉得这对所有人都很公平。 【参考方案1】:看来我能够解决这个问题。我去了编辑 - 项目设置 - 播放器 - 其他设置 - 配置 - API 兼容级别。然后我将它从.NET Standard 2.0
更改为.NET 4.x
。然后我重新打开 Unity,将其改回(以保留 API 限制)并重新打开 Unity。现在这些建议按预期工作。除了一些警告外,我在脚本打开时收到了一些警告(here 是与警告相关的问题)。
【讨论】:
我无法更改 Api 兼容性级别,它在 .Net Standard 2.0 中被禁用以上是关于VS Code IntelliSense 不适用于 Unity。为啥?的主要内容,如果未能解决你的问题,请参考以下文章
用于 javascript 的 VS Code Intellisense 不提供方法建议
每次我`git commit`时VS Code的Typescript IntelliSense都会中断
VS Code Code Runner 不适用于 virtualenvs
VS Code 中的调试不适用于 Typescript Vue 应用程序