diff -r 3babaea6234a maven/src/org/netbeans/modules/maven/execute/OutputTabMaintainer.java --- a/maven/src/org/netbeans/modules/maven/execute/OutputTabMaintainer.java Wed Jan 27 15:07:06 2016 +0000 +++ b/maven/src/org/netbeans/modules/maven/execute/OutputTabMaintainer.java Tue Feb 09 10:42:43 2016 +0100 @@ -135,7 +135,9 @@ } // } if (io == null) { - io = IOProvider.getDefault().getIO(name, createNewTabActions()); + // if you explicitly request terminal, then you need to be ready + // for IOFolding not supported. + io = IOProvider.get("Terminal").getIO(name, createNewTabActions()); io.setInputVisible(true); } return io; diff -r 3babaea6234a maven/src/org/netbeans/modules/maven/execute/cmd/ExecutionEventObject.java --- a/maven/src/org/netbeans/modules/maven/execute/cmd/ExecutionEventObject.java Wed Jan 27 15:07:06 2016 +0000 +++ b/maven/src/org/netbeans/modules/maven/execute/cmd/ExecutionEventObject.java Tue Feb 09 10:42:43 2016 +0100 @@ -200,15 +200,16 @@ } parentProject = findParentNodeOfType(ExecutionEvent.Type.ProjectStarted); - if (parentProject == null) { - - this.foldHandle = IOFolding.startFold(io, true); - } else { - if (parentProject.foldHandle == null) { - parentProject.startFold(io); + if (IOFolding.isSupported(io)) { + if (parentProject == null) { + this.foldHandle = IOFolding.startFold(io, true); + } else { + if (parentProject.foldHandle == null) { + parentProject.startFold(io); + } + assert parentProject.foldHandle != null; + this.foldHandle = parentProject.foldHandle.silentStartFold(true); } - assert parentProject.foldHandle != null; - this.foldHandle = parentProject.foldHandle.silentStartFold(true); } }