private void waitForStartBeacon() throws IOException {
        while (true) {
            int type = input.read();
            if ((byte) type == ForkServer.READY) {
                return;
            } else if ((byte) type == ForkServer.FAILED_TO_START) {
                throw new IOException("Server had a catastrophic initialization failure");
            } else if (type == -1) {
                throw new IOException("EOF while waiting for start beacon");
            } else {
                //can't do this because of
                // ForkParserIntegrationTest
                // #testAttachingADebuggerOnTheForkedParserShouldWork
//                throw new IOException("Unexpected byte while waiting for start beacon: "+type);
            }
        }
    }
Fills in the jar file used to bootstrap the forked server process.
All the required <code>.class</code> files and a manifest with a
<code>Main-Class</code> entry are written into the archive.

@param file file to hold the bootstrap archive
@throws IOException if the bootstrap archive could not be created
tika-core/src/main/java/org/apache/tika/fork/ForkClient.java