public static void main(String[] args) {

		String USER = ClientUtil.getUserName();
		File serverRoot = null;
		try {
			File parent = AbstractGenericTest.createTempDirectory("ServerTestUtil");

			// Create server instance
			serverRoot = new File(parent, "My_Server");
			FileUtilities.deleteDir(serverRoot);
			createServer(serverRoot.getAbsolutePath(), 0, new String[] { USER });
		}
		catch (Exception e) {
			e.printStackTrace();
		}

		try {
			int i = 0;
			while (true) {
				++i;
				ClientUtil.getRepositoryServer(LOCALHOST, 0, true);
				if ((i % 10) == 0) {
					Msg.info(ServerTestUtil.class, "Success: " + (++i));
				}
				Thread.sleep(100);
			}

		}
		catch (Exception e) {
			e.printStackTrace();
		}
		finally {
			try {
				if (serverRoot != null) {
					disposeServer();
				}
			}
			catch (Exception e) {
				e.printStackTrace();
			}
		}

		System.exit(0);

	}
Waits the specified time before notifying the blocking client thread to give up
on the process to which this class is bound.
@param millis the timeout
Ghidra/Test/IntegrationTest/src/test.slow/java/ghidra/server/remote/ServerTestUtil.java