title: Spring Boot: run liquibase migrations without starting app
body: <p>In Spring Boot, <a href="https://docs.spring.io/spring-boot/docs/current/reference/html/howto-database-initialization.html#howto-execute-liquibase-database-migrations-on-startup" rel="noreferrer">the documentation</a> seems to encourage running migrations on app startup.</p>
  
  <p>This is fine, but sometimes app startup may have side effects / dependencies that I don't want to bother with - I just want to run the migrations on their own. Think just setting up a local dev database, to poke around in it, without even running the app.</p>
  
  <p>In Dropwizard by comparison, running migrations alone <a href="http://www.dropwizard.io/0.7.1/docs/manual/migrations.html#migrating-your-schema" rel="noreferrer">is straightforward</a> with built in arguments for the app, like so</p>
  
  <pre><code>java -jar hello-world.jar db migrate helloworld.yml
  </code></pre>
  
  <p>Is there anything equivalent for Spring Boot? Or do I just have to drop down and run liquibase directly? </p>
  
  <p>I'm interested in a direct answer, but also kind of interested in seeing if I'm misunderstanding something at a higher level - like perhaps this approach of running on startup is generally 'better' for some reasons I haven't discovered yet, so you're encouraged solely to do it this way by Spring Boot as a design choice.</p>