CameraServer is holding onto the socket - GRIP can't publish video

I have a problem trying to use the robot code and SmartDashboard to configure the LifeCamHD 3000, then switch to GRIP. I originally thought it was the USBCamera connection that was causing the problem (see (, but now realize it is the publish connection, the IP socket used by CameraServer to publish the image.

I am getting this exception in the GRIP output:
eb 06, 2016 4:27:56 PM edu.wpi.grip.core.operations.composite.PublishVideoOperation lambda$new$17
WARNING: Address already in use Address already in use

I don’t see the red bar at the bottom of the image appear that shows that the image server has stopped.

It appears that even though I’m just using CameraServer.setImage() that once the server is started, there is no obvious way to stop it. And once the server has the socket connection, GRIP can’t get it to publish it’s output.

Does anyone know how to kill the CameraServer connection to the SmartDashboard? I’ll be digging in, trying to figure it out.