此问题通常表明许可证文件是从网络许可证管理器提供的,并且运行许可证管理器的机器上的许可证.dat文件有问题。导致此错误的原因可能是以下原因之一:
- 生成license.dat文件的主机ID不是license服务器机器的主机ID
- dat文件本身缺少、损坏或不正确的字符
- 系统时间和日期设置不正确。在进行以下操作之前,请确认机器上的日期和时间设置正确。
如果您使用MATLAB R2007b或以下的R2008a或更高版本生成的独立许可证文件,也可能发生此问题。在这种情况下,为MATLAB的正确版本生成一个许可文件将解决这个问题。
如果时间和日期设置正确,并且您没有使用R2007b或以下版本和R2008a或更高版本的独立license文件,请参见下面的步骤排除license文件故障:
第一步是找到许可证管理器的许可证文件(license.dat)。服务器机器上的license.dat文件位于:
请查看以下内容:
1)确保license文件中指定的Host ID与license文件“SERVER”行的Host ID匹配。此外,如果主机ID不是由“ID=”进行,那么它必须与许可证服务器的主机ID匹配。有关获取主机ID的更多信息,请参阅下面列出的相关解决方案。
license文件的Host ID将在license文件的注释行中。例如:
#开始——切,切在这里开始
#MATLAB许可密码文件。
#LicenseNo: 123456 HostID: 001122334455
在此例中,主机ID为MAC地址001122334455。这个相同的MAC地址应该在许可文件的SERVER行中。例如:
服务器my-license-host 001122334455 27000
如果在服务器行中使用了错误的主机ID,或者如果为不同的主机ID生成了许可证文件,则会发生此错误。各个许可证使用的主机ID为ID=和许可证号。如果您有单个许可证,则这应该是服务器行中的主机ID。例如:
服务器my-license-host ID = 123465 27000
注意:更改许可文件注释部分中列出的主机ID不会解决这个错误。如果您的主机ID不正确,您将需要为正确的主机ID获取新的license文件。
2)这个错误可能是由于在您的许可证文件中有额外的回车。为了避免这种情况,请确保以下字符串都以左对齐行开始:#、SERVER、DAEMON或INCREMENT。有时,增量行会在前面的增量行结束时换行,导致它被省略。
3)如果你位于土耳其,或者你的电脑默认语言是土耳其语,请参考下面的文章:
为什么我看到许可证管理器错误-8当启动MATLAB在Linux当我的地区设置为土耳其?