Right now, things are a little clumsy. Your RunImageJ module probably needs to collect the results of your macro, so it can’t close the windows. What I do is to follow one RunImageJ module with another in my pipelines. The second one uses a macro to close the windows created by the first. If you close windows in the group command, you have to wait until the end of the group and if you don’t group image sets, this means you have to wait until the end of the run.
The ImageJ 2.0 project has some neat stuff for running ImageJ headless from CellProfiler and that will hopefully eliminate the clumsiness. ImageJ 2.0 plugins will be able to specify their inputs and outputs and CellProfiler will be able to display those inputs and outputs in the RunImageJ module UI. We will publish more details as the ImageJ 2.0 project progresses.