Unity 2018 不能使用 using TMPro;的bug

本文介绍了解决在Unity中使用TextMeshPro时遇到的无法通过脚本控制的问题。主要原因是包管理器下载的文件没有正确放置,通过手动移动缓存文件夹中的文件到Assets目录下对应的Packages位置可以解决此问题。此外,更新Visual Studio版本也能有效避免此类问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题:在使用包管理器下载TextMeshPro 之后不能使用脚本控制。即不能在项目中检测到TMPro命名空间,从而使用它。

  • 通过查找,发现Unity的Project目录下多了Packages目录,里面包含下载的多个包。里面的代码都是全的,但是不能在VS中引用。同时VS生成解决方案时,会出现以下类似错误。不能成功附加到Unity

    6>CSC : error CS0006: 未能找到元数据文件“...\Temp\UnityVS_bin\Debug\Unity.PackageManagerUI.Editor.dll”
    6>CSC : error CS0006: 未能找到元数据文件“...\Temp\UnityVS_bin\Debug\UnityEditor.StandardEvents.dll”
  • 后来发现在项目目录里有Packages(与Assets同级的Packages目录)文件夹。里面都是下载包的空文件夹,不包含dll或代码文件。这就是不能在脚本中引用它们的原因。
    \与Assets同级的Packages目录
  • 进入unity主界面下的Project目录下的Packages目录,发现在缓存文件夹里面(对子文件夹使用Show in explorer)。复制到assets目录下的packages中包所在的位置。覆盖对应包所在文件夹。
  • 问题解决。
    缓存文件夹
    如果Unity后面修复了这个bug,即Packages Manager下载只会把包文件下载到缓存文件夹而不是项目目录里。或者有更好的解决方法,希望大家告知。

大雾,之前Unity 2018使用的是VS2017,解决方案里出现几十个项目。后来把VS升级了一下,好像现在才是正常的项目。也不用移动Packages的任何文件,VS可以识别到。
所以出现这种问题可能是VS版本太低导致的。更新后需要删除之前的解决方案重新加载。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值