83 lines
2.5 KiB
Markdown
83 lines
2.5 KiB
Markdown
|
# quarkus-websocket
|
|||
|
|
|||
|
This project uses Quarkus, the Supersonic Subatomic Java Framework.
|
|||
|
|
|||
|
If you want to learn more about Quarkus, please visit its website: https://quarkus.io/ .
|
|||
|
|
|||
|
## Running the application in dev mode
|
|||
|
|
|||
|
You can run your application in dev mode that enables live coding using:
|
|||
|
|
|||
|
```shell script
|
|||
|
./mvnw compile quarkus:dev
|
|||
|
```
|
|||
|
|
|||
|
> **_NOTE:_** Quarkus now ships with a Dev UI, which is available in dev mode only at http://localhost:8080/q/dev/.
|
|||
|
|
|||
|
## Packaging and running the application
|
|||
|
|
|||
|
The application can be packaged using:
|
|||
|
|
|||
|
```shell script
|
|||
|
./mvnw package
|
|||
|
```
|
|||
|
|
|||
|
It produces the `quarkus-run.jar` file in the `target/quarkus-app/` directory.
|
|||
|
Be aware that it’s not an _über-jar_ as the dependencies are copied into the `target/quarkus-app/lib/` directory.
|
|||
|
|
|||
|
The application is now runnable using `java -jar target/quarkus-app/quarkus-run.jar`.
|
|||
|
|
|||
|
If you want to build an _über-jar_, execute the following command:
|
|||
|
|
|||
|
```shell script
|
|||
|
./mvnw package -Dquarkus.package.type=uber-jar
|
|||
|
```
|
|||
|
|
|||
|
The application, packaged as an _über-jar_, is now runnable using `java -jar target/*-runner.jar`.
|
|||
|
|
|||
|
## Creating a native executable
|
|||
|
|
|||
|
You can create a native executable using:
|
|||
|
|
|||
|
```shell script
|
|||
|
./mvnw package -Pnative
|
|||
|
```
|
|||
|
|
|||
|
Or, if you don't have GraalVM installed, you can run the native executable build in a container using:
|
|||
|
|
|||
|
```shell script
|
|||
|
./mvnw package -Pnative -Dquarkus.native.container-build=true
|
|||
|
```
|
|||
|
|
|||
|
You can then execute your native executable with: `./target/quarkus-websocket-1.0-SNAPSHOT-runner`
|
|||
|
|
|||
|
If you want to learn more about building native executables, please consult https://quarkus.io/guides/maven-tooling.
|
|||
|
|
|||
|
## Related Guides
|
|||
|
|
|||
|
- WebSockets ([guide](https://quarkus.io/guides/websockets)): WebSocket communication channel support
|
|||
|
- YAML Configuration ([guide](https://quarkus.io/guides/config-yaml)): Use YAML to configure your Quarkus application
|
|||
|
- SmallRye GraphQL ([guide](https://quarkus.io/guides/smallrye-graphql)): Create GraphQL Endpoints using the code-first approach from MicroProfile GraphQL
|
|||
|
|
|||
|
## Provided Code
|
|||
|
|
|||
|
### YAML Config
|
|||
|
|
|||
|
Configure your application with YAML
|
|||
|
|
|||
|
[Related guide section...](https://quarkus.io/guides/config-reference#configuration-examples)
|
|||
|
|
|||
|
The Quarkus application configuration is located in `src/main/resources/application.yml`.
|
|||
|
|
|||
|
### SmallRye GraphQL
|
|||
|
|
|||
|
Start coding with this Hello GraphQL Query
|
|||
|
|
|||
|
[Related guide section...](https://quarkus.io/guides/smallrye-graphql)
|
|||
|
|
|||
|
### WebSockets
|
|||
|
|
|||
|
WebSocket communication channel starter code
|
|||
|
|
|||
|
[Related guide section...](https://quarkus.io/guides/websockets)
|