Unity 2019-2-14f1 Windows10 出现空错误的解决方法

在Windows 10上使用Unity 2019.2.14f1时,遇到新建项目无法运行且Console显示空错误的问题。即使没有编译错误和文件名与类名不匹配,所有脚本仍无法添加。解决方案包括参考Unity社区和Stack Overflow上的建议,修改Unity安装目录下的unity_csc.bat文件,将原有内容后添加一个`.`。

问题描述:

刚接触Unity,因为一些原因必须使用 2019-2-14f1 这个版本,安装后出现该问题。
直接新建未做任何修改的项目不能运行,Console里出现两个空错误,如下图:
在这里插入图片描述
所有的脚本失效,不能添加,如下:
在这里插入图片描述
提示:

Can’t add script component ‘CubeScript’ because the script class cannot be found. Make sure that there are no compile errors and that the file name and class name match.

但是检查发现文件名和类名确是一致的,也不存在编译错误。

解决方式:

Unity 社区的解答
Stack Overflow 的回答

修改Uni

<think>我们正在使用Unity 5.3.3f1,需要手动安装Android SDK Build-Tools 24.0.3版本。因为Unity 5.3.3f1对Build-Tools的兼容性有限,最高支持到24.0.3(根据引用[1]的提示,最新支持的是30.0.2,但这里我们需要的是24.0.3,因为Unity 5.3.3f1较旧,可能不支持太高的版本,而24.0.3是它兼容的一个版本)。 注意:Unity 5.3.3f1默认使用Android SDK Manager(通过`android.bat`)来安装组件,但有时自动安装会失败,或者我们想手动安装特定版本。 步骤: 1. **确定Android SDK路径**: 打开Unity编辑器,进入`Edit -> Preferences -> External Tools`,查看`Android SDK Location`的路径。假设路径为`C:\Android\sdk`(根据引用[2]中用户可能有多个SDK路径,但我们需要使用Unity配置的路径)。 2. **下载Build-Tools 24.0.3**: 由于官方已经不再直接提供旧版本的下载,我们可以通过以下方式获取: - 访问Google的存档仓库:https://dl.google.com/android/repository/repository-12.xml (适用于旧版本) - 在页面中搜索`build-tools;24.0.3`,找到对应的下载链接。例如,对于Windows可能是:`https://dl.google.com/android/repository/build-tools_r24.0.3-windows.zip` 3. **手动安装**: - 解压下载的zip文件,将其内容放入SDK目录下的`build-tools`文件夹中。具体路径为: ``` [SDK路径]/build-tools/24.0.3 ``` 例如:`C:\Android\sdk\build-tools\24.0.3` - 注意:解压后的文件夹里应该包含`aapt.exe`、`dx.bat`、`lib`等工具和文件夹。 4. **验证安装**: -Unity中重新打开`Preferences -> External Tools`,确保SDK路径正确。 - 尝试构建一个Android项目,看是否还会出现关于Build-Tools的错误。 5. **备选方法:使用命令行安装(如果SDK Manager可用)**: 打开命令行,进入SDK的`tools`目录(例如:`C:\Android\sdk\tools`),然后运行: ```bash android update sdk --no-ui --filter build-tools-24.0.3 ``` 但是,由于Google已经不再支持`android.bat`的更新,这种方法可能无法下载旧版本,因此手动下载安装更可靠。 6. **如果遇到许可问题(如引用[2]中提到的License问题)**: 手动安装不需要接受许可,所以可以避免这个问题。 7. **配置Unity项目**: 在Player Settings中,确保`Minimum API Level`和`Target API Level`设置正确(例如,使用与Build-Tools 24.0.3兼容的API级别,如API 23或24)。 8. **注意事项**: - 确保没有格或其他特殊字符在路径中。 - 如果之前安装过其他版本的Build-Tools,24.0.3可以共存,但Unity需要使用这个版本。可以通过在Unity中设置`Build-Tools`版本(但Unity 5.3.3f1可能没有直接设置Build-Tools版本的选项,它默认使用与目标API兼容的最新Build-Tools,但这里我们只安装了24.0.3,所以它会用这个版本)。 9. **如果仍然失败**: 检查Unity编辑器日志(在Windows上,日志路径通常为`%USERPROFILE%\AppData\Local\Unity\Editor\Editor.log`),查看是否有关于Android SDK的详细错误信息。 相关问题: 1. 如何解决Unity中Android SDK路径冲突的问题? 2. Unity 5.3.3f1支持哪些Android API级别? 3. 如何为Unity安装Android支持库(Android Support Repository)?</think>### 在Unity 5.3.3f1中手动安装Android SDK Build-Tools 24.0.3的步骤 #### 核心原理 Unity 5.3.3f1需要特定版本的Build-Tools进行Android编译。由于官方SDK管理器已不再支持旧版本,需通过手动下载和配置完成安装[^1]。 #### 操作步骤 1. **确定SDK路径** 打开Unity编辑器: `Edit → Preferences → External Tools` 记录`Android SDK Location`路径(如`C:\Android\sdk`) 2. **下载Build-Tools 24.0.3** 访问Google官方存档: [https://dl.google.com/android/repository/build-tools_r24.0.3-windows.zip](https://dl.google.com/android/repository/build-tools_r24.0.3-windows.zip) (其他系统替换`windows`为`macosx`/`linux`) 3. **手动安装** ```bash # 解压到SDK目录的build-tools子文件夹 C:\Android\sdk └── build-tools └── 24.0.3 # 解压内容到此目录 ``` 确保包含以下关键文件: - `aapt.exe`(资源打包工具) - `dx.bat`(DEX编译器) - `lib`(依赖库) 4. **配置Unity环境** - 重启Unity编辑器 - 验证路径: `Edit → Preferences → External Tools → Android SDK Location` - 检查日志: 控制台应无`Build-tools component not found`错误 5. **强制使用指定版本** 在Unity项目根目录创建`local.properties`文件(若不存在): ```properties sdk.dir=C\:\\Android\\sdk android.builder.sdkBuildTool=24.0.3 ``` #### 验证安装 1. 新建测试场景 2. 执行构建: `File → Build Settings → Android → Build` 3. 观察输出日志: 成功构建且无`Unsupported Build-Tools`错误即表示安装有效 #### 注意事项 1. **版本兼容性** Unity 5.3.3f1最高支持Build-Tools 24.0.3,更高版本会导致编译失败[^1] 2. **目录结构** 必须保持`build-tools/24.0.3`的层级结构 3. **权限问题** 若遇访问拒绝,右键SDK目录 → 属性 → 安全 → 添加当前用户完全控制权限 4. **备选下载源** 若Google链接失效,可从镜像站下载: ```url https://androidsdkoffline.blogspot.com/p/android-sdk-build-tools.html ``` #### 常见问题解决 - **安装后仍报错** 删除SDK目录下的`.temp`缓存文件夹后重启Unity - **多版本共存** 可同时安装24.0.1/24.0.2等版本,但需在`local.properties`指定24.0.3 - **JAVA_HOME配置** 确保环境变量指向JDK 7或8(Unity 5.3.3f1不支持更高JDK) --- ### 相关问题 1. 如何解决Unity中"Android SDK platform not found"错误2. Unity 5.3.3f1支持的最高Android API级别是多少? 3. 手动安装后如何验证Android SDK组件完整性? 4. 为什么Unity 5.x版本需要特定JDK版本配合? [^1]: 参考错误提示"Latest supported build-tools version is 30.0.2",实际需根据Unity版本选择兼容的Build-Tools [^2]: 路径配置冲突可能导致工具识别失败,需统一SDK位置
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值