title: SonarQube:java.lang.IllegalStateException: Webapp did not start
body: <p>I was trying to deploy SonarQube at a local virtual Ubuntu machine.Everything was done.But when I use <code>/etc/init.d/sonar start</code> to start sonar server, it failed.</p>
  <h3>web.log:</h3>
  <pre><code>`2017.03.29 01:33:04 WARN  web[][o.s.p.ProcessEntryPoint] Fail to start web
  java.lang.IllegalStateException: Webapp did not start
      at org.sonar.server.app.EmbeddedTomcat.isUp(EmbeddedTomcat.java:83)
      at org.sonar.server.app.WebServer.isUp(WebServer.java:46)
      at org.sonar.process.ProcessEntryPoint.launch(ProcessEntryPoint.java:105)
      at org.sonar.server.app.WebServer.main(WebServer.java:67)
  2017.03.29 01:33:05 INFO  web[][o.s.s.a.TomcatAccessLog] Web server is stopped
  `
  </code></pre>
  <p>Below are my versions:</p>
  <ul>
  <li>Java : JDK1.8</li>
  <li>SonarQube : 6.3</li>
  <li>Sonar-Runner:2.4</li>
  <li>Mysql : 5.7</li>
  </ul>
  <h3>full web.log:</h3>
  <pre><code>    2017.03.29 01:33:04 WARN  web[][o.a.c.l.WebappClassLoaderBase] The web application [ROOT] appears to have started a thread named [elasticsearch[Piledriver][transport_client_timer][T#1]{Hashed wheel timer #1}] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
   java.lang.Thread.sleep(Native Method)
   org.jboss.netty.util.HashedWheelTimer$Worker.waitForNextTick(HashedWheelTimer.java:445)
   org.jboss.netty.util.HashedWheelTimer$Worker.run(HashedWheelTimer.java:364)
   org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108)
   java.lang.Thread.run(Thread.java:745)
  2017.03.29 01:33:04 WARN  web[][o.a.c.l.WebappClassLoaderBase] The web application [ROOT] appears to have started a thread named [elasticsearch[Piledriver][generic][T#1]] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
   sun.misc.Unsafe.park(Native Method)
   java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
   java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
   java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
   java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
   java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
   java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
   java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
   java.lang.Thread.run(Thread.java:745)
  2017.03.29 01:33:04 WARN  web[][o.a.c.l.WebappClassLoaderBase] The web application [ROOT] appears to have started a thread named [Abandoned connection cleanup thread] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
   java.lang.Object.wait(Native Method)
   java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
   com.mysql.jdbc.AbandonedConnectionCleanupThread.run(AbandonedConnectionCleanupThread.java:43)
  2017.03.29 01:33:04 WARN  web[][o.a.c.l.WebappClassLoaderBase] The web application [ROOT] appears to have started a thread named [Timer-0] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
   java.lang.Object.wait(Native Method)
   java.util.TimerThread.mainLoop(Timer.java:552)
   java.util.TimerThread.run(Timer.java:505)
  2017.03.29 01:33:04 INFO  web[][o.s.s.a.TomcatAccessLog] Web server is started
  2017.03.29 01:33:04 INFO  web[][o.s.s.a.EmbeddedTomcat] HTTP connector enabled on port 9000
  2017.03.29 01:33:04 WARN  web[][o.s.p.ProcessEntryPoint] Fail to start web
  java.lang.IllegalStateException: Webapp did not start
      at org.sonar.server.app.EmbeddedTomcat.isUp(EmbeddedTomcat.java:83)
      at org.sonar.server.app.WebServer.isUp(WebServer.java:46)
      at org.sonar.process.ProcessEntryPoint.launch(ProcessEntryPoint.java:105)
      at org.sonar.server.app.WebServer.main(WebServer.java:67)
  2017.03.29 01:33:05 INFO  web[][o.s.s.a.TomcatAccessLog] Web server is stopped
  </code></pre>