Quarkus

From Chorke Wiki
Revision as of 21:26, 27 August 2021 by Shahed (talk | contribs)
Jump to navigation Jump to search
git clone https://github.com/quarkusio/quarkus-quickstarts.git
cd ./quarkus-quickstarts/getting-started
export GRAALVM_HOME=/d/opt/cli/mandrel-java11-21.2.0.0-Final
export PATH=$JAVA11_HOME/bin:$PATH:$GRAALVM_HOME/bin
export JAVA_HOME=$JAVA11_HOME

OR

export GRAALVM_HOME=/d/opt/cli/graalvm-ce-java11-21.2.0
export PATH=$JAVA11_HOME/bin:$PATH:$GRAALVM_HOME/bin
export JAVA_HOME=$JAVA11_HOME
gu install native-image
set GRAALVM_HOME=D:\opt\cli\mandrel-java11-21.2.0.0-Final
set PATH=%JAVA11_HOME%/bin;%PATH%;%GRAALVM_HOME%/bin
set JAVA_HOME=%JAVA11_HOME%

OR

set GRAALVM_HOME=D:\opt\cli\graalvm-ce-java11-21.2.0
set PATH=%JAVA11_HOME%/bin;%PATH%;%GRAALVM_HOME%/bin
set JAVA_HOME=%JAVA11_HOME%
gu install native-image

Quarkus Build

# for windows 10 we should avoid symbolic link. instead of symbolic link
# we should use absolute project path either from command or gitbash
mvn package -Pnative -Dquarkus.native.container-runtime=docker -e
mvn verify  -Pnative -Dquarkus.native.container-runtime=docker -e
mvn compile  quarkus:dev
mvn package -Pnative
mvn verify  -Pnative
mvn package

Maven Artifact

mvn io.quarkus:quarkus-maven-plugin:2.1.3.Final:create \
    -DprojectGroupId=org.chorke.academia.rest \
    -DprojectArtifactId=getting-started \
    -DclassName="org.chorke.academia.rest.getting.started.GreetingResource" \
    -Dpath="/hello"
cd getting-started

After Build

: '
 ./quarkus-quickstarts/getting-started/target/
 ─────────────────────────────────────────────
   ├─ quarkus/bootstrap/test-app-model.dat
   ├─ quarkus-artifact.properties
   └─ quarkus-app/
      ├─ app/getting-started-1.0.0-SNAPSHOT.jar
      ├─ quarkus-app-dependencies.txt
      ├─ quarkus-run.jar
      ├─ quarkus/
      │  ├─ generated-bytecode.jar
      │  ├─ quarkus-application.dat
      │  └─ transformed-bytecode.jar

      └─ lib/
         ├─ main/
         └─ boot/
            ├─ io.quarkus.quarkus-development-mode-spi-2.1.3.Final.jar
            ├─ io.smallrye.common.smallrye-common-io-1.6.0.jar
            ├─ org.graalvm.sdk.graal-sdk-21.1.0.jar
            ├─ org.jboss.logging.jboss-logging-3.4.2.Final.jar
            ├─ org.jboss.logmanager.jboss-logmanager-embedded-1.0.9.jar
            └─ org.wildfly.common.wildfly-common-1.5.4.Final-format-001.jar
'

java -jar target/quarkus-app/quarkus-run.jar

Configuring

quarkus.banner.path=/META-INF/chorke/academia.txt
quarkus.banner.enabled=false

References