fixed sbt script
replaced semaphore by a back off procedure that uses LockSupport.parkNanos(100)