I am running a previous version of InDesign Server for CC2020 with our plugins.
I notice error while the server starts up and is related to InDesignModelAndUI.framework library.
I am now suspecting this is because our plugins have build time dependency on InDesignModelAndUI.framework but this framework is not required when run under InDesign Server.
Is that correct? If yes, then do I need to create another build configuration for InDesign Server which would not depend on InDesignModelAndUI.framework or is there a more run-time way of doing this?
Remove the use of this framework from your project. You should use only InDesignModel.framework for a plugin to be used on IDS. Once you remove the UI framework, your project might hopefully refuse to build if there are still some UI API's referenced in it, remove the call to those API's and you shall have a plugin that is IDS compatible
So, here's what I understand:
For the plugin to work with InDesign we need InDesignModelAndUI.framework, and,
For the plugin to work with InDesign Server, we just need InDesignModel.framework.
Is that correct understanding?
This would mean having some form of a build configuration and shipping two versions of the plugin, ones which are for InDesign and ones which are for InDesign Server, isn't it?
I would put it a little differently as follows
So what you need to do is, separate your plugin into two plugins i.e. the model and UI plugins if it's not done already. The model plugin will link to InDesignModel.framework and the UI plugin will link to InDesignModelAndUI.framework. For IDS you will ship only the model version of the plugin as the UI has no use on the server.
very well explained indeed. Thanks.