Quarkus篇入门创建项目搭建debug环境

目录
  • 前言
  • 搭建Quarkus项目
    • 纯手工方式
    • 官网装配器方式
    • IDEA方式
  • 编写第一个Quarkus接口
  • 启动你的应用并调试

前言

在学习一个新的框架技术前,肯定要先来一套hello word,搭建基本的运行环境和调试环境。

先来创建一个Quarkus的应用

搭建Quarkus项目

下面介绍三种创建Quarkus项目的方式

纯手工方式

1、创建maven工程,这个不多赘述,是个java程序员都会的

2、添加Quarkus依赖,下面贴出基本的依赖

<properties>
        <quarkus-plugin.version>1.6.0.Final</quarkus-plugin.version>
        <quarkus.platform.version>1.6.0.Final</quarkus.platform.version>
        <surefire-plugin.version>2.22.1</surefire-plugin.version>
        <compiler-plugin.version>3.8.0</compiler-plugin.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    </properties>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>io.quarkus</groupId>
                <artifactId>quarkus-bom</artifactId>
                <version>${quarkus.platform.version}</version>
                <scope>import</scope>
                <type>pom</type>
            </dependency>
        </dependencies>
    </dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>io.quarkus</groupId>
            <artifactId>quarkus-resteasy-jsonb</artifactId>
        </dependency>
        <!-- Testing: -->
        <dependency>
            <groupId>io.quarkus</groupId>
            <artifactId>quarkus-junit5</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>io.rest-assured</groupId>
            <artifactId>rest-assured</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>${compiler-plugin.version}</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <!-- the parameters=true option is critical so that RESTEasy works fine -->
                    <parameters>true</parameters>
                </configuration>
            </plugin>
            <plugin>
                <!-- you need this specific version to integrate with the other build helpers -->
                <artifactId>maven-surefire-plugin</artifactId>
                <version>${surefire-plugin.version}</version>
                <configuration>
                    <systemPropertyVariables>
                        <java.util.logging.manager>org.jboss.logmanager.LogManager</java.util.logging.manager>
                        <maven.home>${maven.home}</maven.home>
                    </systemPropertyVariables>
                </configuration>
            </plugin>
            <plugin>
                <!-- This is what injects the magic Quarkus bytecode -->
                <groupId>io.quarkus</groupId>
                <artifactId>quarkus-maven-plugin</artifactId>
                <version>${quarkus-plugin.version}</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>build</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

官网装配器方式

地址:https://code.quarkus.io/

用法和spring的https://start.spring.io/一样。填好你的maven基础信息,选好依赖就可以下载工程了

IDEA方式

IDEA里已经支持创建Quarkus项目了,和spring boot的原理一样,也是基于https://code.quarkus.io/来的,所以操作的方式和网页上一样,如:

编写第一个Quarkus接口

@Produces(MediaType.TEXT_PLAIN)
@Path("/hello")
public class HelloResource {
    @GET
    @Path("/{name}")
    public String hello(@PathParam("name") String name) {
        return "hello" + name;
    }
}

Quarkus基于标准的jax-rs规范来写web的,当然,它也扩展了spring web的@Controller的方式,这个后面会介绍

启动你的应用并调试

1、通过运行 mvn quarkus:dev,可以启动应用,启动应用后,会发现打印了:

Listening for transport dt_socket at address: 5005

说明开启了5005调试端口,在IDEA中,可以通过

run-》Attach to process

来直接连接这个端口进行调试

2、可以新建一个main方法,直接debug模式启动,来进行运行和调试,如:

@QuarkusMain
public class Main {
    public static void main(String ... args) {
        Quarkus.run(args);
    }
}

以上就是Quarkus篇入门创建项目搭建debug环境的详细内容,更多关于Quarkus入门搭建debug环境的资料请关注我们其它相关文章!

(0)

相关推荐

  • Quarkus的Spring扩展快速改造Spring项目

    目录 前言 spring-webmvc扩展 spring-datajpa扩展 spring-Di扩展 spring-boot-properties扩展 结语 前言 博主上个礼拜,已经实现了quarkus的native image应用的上线,经过两天的监控下来,一切运行指标良好,就是内存升到了100M了,这个后续继续跟进观察.今天聊点老的spring应用改造成quarkus的问题.一个新的框架是否可以顺利的在一个公司落地,除了本身优秀的设计和优异的性能外,框架的生态和上手的难度以及对现有框架的兼容

  • Quarkus集成redis操作Redisson实现数据互通

    目录 前言 集成redis 复制Redisson序列化 使用 前言 博主所在公司大量使用了redis缓存,redis客户端用的Redisson.在Quarkus集成redis时,博主尝试使用Redisson客户端直接集成,发现,在jvm模式下运行quarkus没点问题,但是在打native image时,就报错了,尝试了很多方式都是莫名其妙的异常.最后决定采用quarkus官方的redis客户端,但是Redisson客户端数据序列化方式是特有的,不是简单的String,所以quarkus中的re

  • Quarkus云原生开篇java框架简介

    目录 前言 什么是quarkus? 为什么用quarkus? 专为开发人员而设计 容器优先 命令式和响应式代码 结语 前言 Quarkus 是小红帽开源的专门针对云容器环境优化的云原生java框架,目前已迭代到1.6.0版本,已完成了大部分的框架库的集成扩展,为了让你低成本迁移到Quarkus来,它兼容主流的框架开发模式api,如spring web. Quarkus已具备企业级应用开发能力.而且未来容器云肯定是主流了,可以预见,未来的软件都是运行在k8s这样的容器集群里.而容器环境需要应用具备

  • Quarkus中实现Resteasy的文件上传下载操作

    目录 前言 文件上传 文件下载 前言 做java web开发,文件的上传和下载是一个非常常见的需求场景.在spring生态下的文件上传下载非常简单,记得五年前,我刚写博的时候也写过spring的上传和下载<SpringMvc实现文件上传与下载>,以及Struts2的文件上传和下载<java Struts2实现文件上传下载>.今天来看看Quarkus框架中是如何实现的,因为Quarkus的JAX-RS采用Resteasy的实现,故Quarkus中的文件上传和下载,也就是Resteas

  • Quarkus改造Pmml模型项目异常记录及解决处理

    目录 前言 异常如下: 解决 解决思路 stax-api百科 总结 前言 这个项目是一个PMML模型跑分系统,在使用quarkus架构对其改造的过程中,在加载PMML模型时,抛了一个异常,在网上找了很多资料都没有解决,pmml项目的issue中也没有找到相关的内容,故在此记录下,给遇到问题的你做个参考 jpmml-evaluator:https://github.com/jpmml/jpmml-evaluator 异常如下: java.lang.LinkageError: loader cons

  • Quarkus篇入门创建项目搭建debug环境

    目录 前言 搭建Quarkus项目 纯手工方式 官网装配器方式 IDEA方式 编写第一个Quarkus接口 启动你的应用并调试 前言 在学习一个新的框架技术前,肯定要先来一套hello word,搭建基本的运行环境和调试环境. 先来创建一个Quarkus的应用 搭建Quarkus项目 下面介绍三种创建Quarkus项目的方式 纯手工方式 1.创建maven工程,这个不多赘述,是个java程序员都会的 2.添加Quarkus依赖,下面贴出基本的依赖 <properties> <quarku

  • ionic 3.0+ 项目搭建运行环境的教程

    本文介绍了基于ionic3.4.0的项目搭建,分享给大家,具体如下: 在写这篇文章的时候,ionic版本已经更新到3.4.0.手头上有一大堆ionic1.x版本的项目,也在这个基础上开发了许多第三方的插件.实在是按捺不住迭代重构的想法,终于开始了3.x的升级.文中的内容都是在实践的过程编写的,注意请不要着急升级版本. 环境迁移 先看下升级后最新的环境输出信息 全局升级了Cordova和Ionic的版本,分别是7.0.1和3.4.0.输出ionic info 打印出最新的环境配置信息.这里要特殊指

  • Flask项目搭建及部署(最全教程)

    目录 flask搭建及部署 1.创建flask项目: 2.创建项目主要逻辑代码保存目录 2.1 配置mysql数据库,加载配置文件并针对整个app项目定义全局db 2.2 定义model模型,负责和数据库交互 2.3 声明蓝图 2.4 将声明好的蓝图注册进app中 3 通过以上的步骤后,我们可以基本操作数据库了: 4 路由传参 5 动态正则匹配路由 6 增加日志记录.redis配置加载.mq配置加载 6.1 日志记录 6.2 redis配置及加载 6.3 rabbitmq基础配置及加载 7 全局

  • Spring Boot 项目搭建教程及注解

    Spring Boot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置.通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域成为领导者 特点: 1. 创建独立的Spring应用程序 2. 嵌入的Tomcat,无需部署WAR文件 3. 简化Maven配置 4. 自动配置Spring 5. 提供生产就绪型功能,如指标,健康检查和外部配置

  • IDEA+Maven搭建Spring环境的详细教程

    1. Spring简介 Spring是一个轻量级控制反转(IoC)和面向切面(AOP)的容器框架. 2. Spring的优势 1.方便解耦, 简化开发: 通过Spring提供的IOC容器, 可以将对象间的依赖关系交由Spring进行控制, 避免硬编码所造成的过度耦合. 2.AOP编程的支持: 通过AOP功能方便进行面向切面编程, 许多不容易用传统OOP实现的功能可以通过AOP轻松实现. 3.声明式事物编程: 通过声明方式灵活的进行事务管理, 提高开发效率和质量. 4.方便程序测试: 可以用非容器

  • 快速上手基于Anaconda搭建Django环境的教程

    目录 一.介绍 二.django环境安装 1.创建虚拟环境Django 2.激活沙箱环境 3.安装Django 三.pycharm的安装与配置 四.创建简单的Django示例 一.介绍 Django特点:具有完整的封装,开发者可以高效率的开发项目,Django将大部分的功能进行了封装,开发者只需要调用即可,如此,大大的缩短了开发的时间,同时也因为太多封装导致开发灵活度和项目的运行效率不足.通常在工作当中,开发者可以使用Django快速的搭建项目,然后基于项目进行个别部分的效率优化. 二.djan

  • Vue Vuex搭建vuex环境及vuex求和案例分享

    目录 Vuex介绍 概念 何时使用 多个组件需要共享数据时 求和案例–纯vue版 搭建vuex环境 求和案例–vuex版 一些疑惑和问题 Vuex介绍 概念 在 Vue 中实现集中式状态(数据)管理的一个 Vue 插件,对 vue 应用中多个组件的共享状态进行集中式的管理(读写),也是一种组件间通信的方式,且适用于任意组件间通信 何时使用 多个组件需要共享数据时 求和案例–纯vue版 新建 Count.vue 组件,并在 App.vue 中注册引用 <template>   <div&g

  • Nuxt3项目搭建过程(Nuxt3+element-plus+scss详细步骤)

    目录 1. Nuxt3的安装 1.1. 安装新建Nuxt3 项目 1.2. Nuxt3的启动使用 1.3. Nuxt3 运行端口 2. element-plus的安装配置 2.1. 演示使用 3. scss安装和全局变量配置 3.1. 使用 3.2. 外部导入使用 3.3. 全局配置使用 4. 拓展:Corepack 自动装载 pnpm 小聊: 本次记录一次使用Nuxt3搭建前端项目的过程,内容包含Nuxt3的安装,基于Vite脚手架(默认)构建的vue3项目,element-plus的安装配置

  • springCloud项目搭建流程步骤分解

    实现跨服务的远程调用(RestTemplate) 业务场景:在返回订单信息数据中显示用户信息 实现思路:基于RestTemplate发起的http请求实现远程调用 1.注册RestTemplate //在order-service的启动类中注册RestTemplate的Bean @Bean public RestTemplate restTemplate(){ return new RestTemplate(); } 2.改造OrderController 2.1:注入RestTemplate

  • 在macOS上搭建python环境的实现方法

    今天刚接触python,查看了一些环境建立的文章,可能是年代久远很多都不适用,现在mac搭建python环境变得更简单.大神勿喷. 首先去python官网下载anaconda,我下载的是Python3.6,64位的. 下载后直接安装. 安装完成后 将anaconda的bin目录加入PATH echo 'export PATH="/Users/work/anaconda/bin/:$PATH"' >> ~/.bashrc 更新bashrc以立即生效 source ~/.bas

随机推荐