我想在Dymola中一起使用两个Modelica库,所以为了方便起见,我写了一个小脚本,loadLibraries.mos
只打开了两个库。
但他们使用不同版本的MSL(3.2.1对3.2.2),由顶级package.mo中的使用注释定义:
annotation(uses(Modelica(version="3.2.1")));
我们开发的库使用3.2.2,使用MSL 3.2.1的库是由其他人开发的。 现在每当我运行mos脚本(或者当我手动打开两个库)时,Dymola想要运行更新脚本。据我所知,更新脚本没有任何改变,所以我想
要么根本不运行,例如通过定义一系列可接受的版本,例如annotation(uses(Modelica(version>="3.2.1")));
或始终运行它,而不先询问,例如通过设置一些标志AlwaysSilentyAcceptMSLUpgrade
在编辑,选项,版本下有一个复选标记Force upgrade of models to MSL version
,但我不确定如何在我的mos脚本中使用它(适用于所有用户)。
答案 0 :(得分:3)
我务实的解决方案是问问自己,你自己的库真的是否需要3.2.2中尚未出现的3.2.2中的任何内容。因此,将您的库更改为仅需要3.2.1。或者反过来(假设您可以更改其他库的package.mo
)将uses
注释更改为3.2.2
答案 1 :(得分:2)
不要更改自己的库,但要使用Modelica 3.2.1只读文件库(例如将文件设为只读)。
那应该跳过提示(至少来自Dymola 2016) - 据我所知,你自己也不要自己编辑这个图书馆。
适用于不需要在版本之间进行任何更新的图书馆;这显然适用于Modelica 3.2.1-> 3.2.2,因为没有转换 - 但如果转换没有影响这个特定的库,它也会起作用。