Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add snippet on hot reload #1088

Merged
merged 1 commit into from
Feb 28, 2019
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 24 additions & 0 deletions docs/src/main/asciidoc/topics/live-coding.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
= {project-name} - Live Coding

One of the major productivity problems that face most Java developers is traditional Java
development workflow. For most web developers this will generally be:

_Write Code_ -> _Compile_ -> _Deploy_ -> _Refresh Browser_ -> _Repeat_

This can be a major drain on productivity, as the compile + redeploy cycle can often take
up to a minute or more. {project-name} aims to solve this problem with its _Live Coding_
feature. When running in development mode the workflow is simply:

_Write Code_ -> _Refresh Browser_ -> _Repeat_

This will work out of the box, with no special setup required. This works for Java file, application config,
and static resources.

== How it works

When you run `mvn compile quarkus:dev` {project-name} will launch in development mode. When
it receives a HTTP request it will hold the request, and check to see if any application source
files have been changed. If they have it will transparently compile the changed files, redeploy
the application with the changed files, and then the HTTP request will continue to the redeployed
application. {project-name} redeploys are much faster than a traditional app server, so for all but the largest
applications this should take well under a second.