为什么 MATLAB 无法在基于 Windows 的系统上正确启动?

215 views (last 30 days)
MathWorks Support Team
MathWorks Support Team on 13 Feb 2014
MATLAB 无法在我的 Windows 系统上启动,并且我没有收到许可证管理器报错信息。

Accepted Answer

MathWorks Support Team
MathWorks Support Team on 10 Feb 2023
如果 MATLAB 未正确启动,并且您未收到任何许可证管理器报错信息,则您可能遇到以下问题之一:
  • 损坏的预设项
  • 干扰  MATLAB 的安全软件或其他第三方软件
  • Java 环境出现问题
  • 安装目录
  • 用户名具有非 ASCII 字符
  • 单点登录 (SSO) 软件干扰 MATLAB
  • 清除临时目录
问题#1:损坏的预设项
MATLAB 无法启动的最常见原因之一是某些东西损坏了 MATLAB 预设项文件夹。您需要重置预设项才能解决此问题。
  1. 使用 Windows 搜索中的快捷方式 %AppData% 直接跳转到当前用户的隐藏 AppData 文件夹。
  2. 浏览以下文件夹:C:\Users\%username%\AppData\Roaming\MathWorks\
  3. 重命名 MATLAB 对应版本的文件夹,例如 将 R2022a 改为 R2022a_old。不要删除任何以“_licenses”结尾的文件夹。
  4. 重新创建空的文件夹 R2022a,重新启动 MATLAB。
当您启动 MATLAB 时,将自动重新生成预设项。
如果您使用的是漫游配置文件,请参阅相关文章:
在某些情况下,预设项文件夹不被写入。在这种情况下,您可以将 MATLAB_PREFDIR 环境变量设置为临时可写目录。有关如何设置环境变量的更多详细信息,请参阅下面的文章。
问题 #2:安全软件或其他第三方软件干扰MATLAB
检查您的任何安全软件日志,看看它是否阻止了 MATLAB 正常启动。已知的像赛门铁克、迈克菲、卡巴斯基、AVAST、趋势科技、BitDefender 和 Webroot 等程序会阻止 MATLAB 正常启动。
如有必要,请在安全软件中设置软件例外以便 MATLAB 可以启动。您可能需要咨询您的 IT 人员或安全软件供应商,以获取有关创建软件例外的帮助。
在某些情况下,可以使用 Windows 错误报告日志文件诊断由常见防病毒软件引起的启动问题。这些日志文件位于以下目录中,可以使用写字板等文本编辑器读取:
C:\Users\%username%\AppData\Local\Microsoft\Windows\WER\*
C:\ProgramData\Microsoft\Windows\WER\ReportArchive
检查此目录中的文件夹(例如:ReportArchive)中是否有在 MATLAB 无法启动时创建的文件,或者包含名称MATLAB 或 JAVA 的文件。
此外,第三方软件,如 AppSense,DeviceLock,NVIDIA RTX 桌面管理器软件和LastPass已知会导致问题。禁用此软件可能会解决 MATLAB 启动问题。
问题 #3:Java 环境问题
除了普通的 MATLAB 桌面环境外,MATLAB 还有一个命令行环境。此环境不依赖于 Java,可用于对 MATLAB 进行故障排除。要在没有桌面环境的情况下启动 MATLAB,请执行以下操作:
  1. 右键单击 MATLAB 快捷方式并选择“属性”。
  2. 转到“目标”行的末尾,在 MATLAB.exe 之后,添加标志 -nodesktop。例如:“C:\Program Files\Matlab\R2022a\bin\matlab.exe” -nodesktop
  3. 按“确定”保存这些更改。
  4. 尝试再次启动 MATLAB。如果 MATLAB 启动,请尝试输入命令“desktop”以查看 MATLAB 是否会以完整模式打开。
  5. 如果这不起作用,请退出在 -nodesktop 之前存在的位置添加行 -nojvm,然后尝试再次启动 MATLAB。
  6. 最后,您可以使用行 -softwareopengl 并尝试再次启动 MATLAB。
如果 MATLAB 以上述任一模式启动,这可能表明您的 Java 配置存在问题。如果 MATLAB 无法在上述任一模式下启动,则可以从 MATLAB 故障转储文件中获取更多信息。要查找这些文件,请检查您的 Temp 文件夹:
C:\Users\%username%\AppData\Local\Temp
这些文件将具有如下名称:
matlab_crash*.XXXX
java.log.*
问题 #4:单点登录 (SSO) 软件干扰 MATLAB
如果有问题的机器安装了 SSO 软件,请暂时禁用 SSO 软件,然后尝试打开 MATLAB。
如果 MATLAB可以启动,请联系您的 IT 部门允许或者将 MATLAB 加入SSO软件白名单,或完全禁用 SSO。
配置 Oracle SSO 以排除 MATLAB,在以下字段设置MATLAB:
  1. 打开 Oracle 企业单点登录管理控制台。
  2. 导航到“Global Agent Settings" > "User Experience" > "Application Response"。
  3. 找到允许您指定"Applications that hooks should ignore"的字段。
问题 #5:安装目录
MATLAB 未安装在其自己的包含文件夹中或文件夹包含非 ASCII 字符时,可能无法正常启动。虽然可以安装在非默认安装路径下,但将它们安装到包含多个非 MATLAB 文件的目录中可能会导致问题。
例如,将 MATLAB 直接安装到 C:\驱动器将导致启动问题。将 MATLAB 安装在包含非 ASCII 字符的文件夹中也会导致启动问题。
因此,建议您安装在默认位置或安装文件夹前面加上 MATLAB。
如果您收到与以下内容相关的错误消息:
尝试将脚本作为函数执行。
C:\\toolbox\matlab\...
这是将 MATLAB 直接安装到 C: 驱动器的结果。必须卸载 MATLAB,然后重新安装到默认路径 C:\Program Files\MATLAB。
问题 #6:清除 TEMP 目录
删除 TEMP 目录中的所有内容可以解决 MATLAB 启动问题。若要访问 TEMP 目录,请打开 Windows 资源管理器并在地址栏中键入以下内容。
%TEMP%
您可以安全地删除此文件夹中的所有内容,因为这些只是临时文件。
问题 #7:用户名包含非 ASCII 字符
如果您的用户名中包含非 ASCII 字符,MATLAB 将无法正常启动。这通常表现为 Java 错误。尝试将MATLAB_PREFDIR环境变量设置为不使用任何非 ASCII 字符的位置。如果这不起作用,您需要使用 ASCII 字符创建另一个 Windows 用户名来解决此问题。
我的问题未在此处列出
如果在执行以上这些故障排除步骤后仍无法启动 MATLAB,请联系 MathWorks 支持:
请在帮助请求中添加与问题相关的日志文件、错误消息和截屏。

More Answers (0)

Categories

Find more on 启动和关闭 in Help Center and File Exchange

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!