范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

创建第一个Quarkus应用程序

  第一次创建 Quarkus 应用程序有很多方法: 手动创建项目  pom.xml   或 build.gradle   文件,添加 Quarkus 依赖项,设置和配置插件,以及定义资源文件夹。 这是一个麻烦和无趣的方法!使用 Maven 和 Quarkus 插件构建项目骨架。 浏览  https://code.quarkus.io   并选择所需的依赖项。 这是最简单、最快捷的开始方式,也是我将使用的方法。
  前往  https://code.quarkus.io   ,您将看到图 1 中的页面。 我们已经圈出一些关键部分来详细解释它们。
  页面顶部是生成项目的 Quarkus 版本。 在它的左下方,您可以自定义将为项目设置的  Group  和  Artifact  名称。 如果需要,这些也可以稍后更改; 如果您忘记自定义它,也没关系 。
  在右侧,用户可以决定是否要将  Starter code   添加到项目中。 默认值为 yes,因此如果您选择任何带有  CODE  标记的扩展,例如  RESTEasy JAX-RS  ,将为项目生成该扩展的 starter code。 页面顶部下方是所有可用 Quarkus 扩展的列表。 有很多扩展可用; 屏幕截图仅显示适合单个页面的屏幕截图。 使用每个复选框来选择要包含在项目中的特定扩展。
  图 1 Quarkus 项目选择
  最后,如果您不想滚动浏览所有扩展程序,请开始在所有扩展程序上方的搜索框中输入术语。 当您输入时,其下方的扩展名列表将过滤,仅显示与您的搜索条件匹配的扩展名。 选择扩展后,它们会出现在  "Generate your application."   旁边的 Selected Extensions 区域下。
  图 2 显示当我们即将生成应用程序时的屏幕。
  图 2 Quarkus 项目生成
  您可以看到我们选择不生成任何  Starter Code  ,并且选择了  RESTEasy Classic  [quarkus-resteasy] 扩展。 我们现在坚持使用普通的 JAX-RS。 我们将在后续探讨更具响应式的 JAX-RS。
  当我们将鼠标悬停在 "Generate your application," 上时,我们可以决定将项目下载为 ZIP 文件或将其发布到 GitHub 仓库。 现在,我们将下载为 ZIP 文件。 该文件将自动下载,其名称与  Artifact  名称匹配。 下载完成后,将 ZIP 文件解压缩到一个目录。
  完成后,我们打开一个终端窗口并切换到生成的项目被提取的目录。在终端执行以下命令 > mvn quarkus:dev
  前面的命令在实时重新加载中启动 Quarkus,使我们能够快速迭代代码并立即看到影响。 成功启动将有终端输出,如下所示: __  ____  __  _____   ___  __ ____  ______  --/ __ / / / / _ | / _ / //_/ / / / __/  -/ /_/ / /_/ / __ |/ , _/ ,< / /_/ /  --________/_/ |_/_/|_/_/|_|____/___/ 2023-03-19 18:10:58,444 INFO  [io.quarkus] (Quarkus Main Thread) code-with-quarkus 1.0.0-SNAPSHOT on JVM (powered by Quarkus 2.16.4.Final) started in 2.878s. Listening on: http://localhost:8080 2023-03-19 18:10:58,463 INFO  [io.quarkus] (Quarkus Main Thread) Profile dev activated. Live Coding activated. 2023-03-19 18:10:58,463 INFO  [io.quarkus] (Quarkus Main Thread) Installed features: [cdi, smallrye-context-propagation, vertx]
  浏览器中打开  http://localhost:8080 ,你会看到  Resource not found 。 不好了! 什么地方出了错?
  实际上,并没有出什么问题。 眼尖的读者可能已经注意到启动日志仅将 cdi 列为已安装功能。 RESTEasy 怎么样? 我们在创建项目时选择了它的扩展名。 查看  pom.xml   内部,您将看到依赖项如下:            io.quarkus       quarkus-resteasy                 io.quarkus       quarkus-arc                 io.quarkus       quarkus-junit5       test     
  RESTEasy 肯定是作为依赖项存在的,那么发生了什么? 在构建过程中,Quarkus 发现实际上没有任何使用 REST‐Easy 的代码存在,因此卸载了该功能并可以将其删除以节省内存。 让我们现在解决这个问题。
  在 Quarkus 仍在运行的情况下,在  /src/main/java   中创建 org.acme   包。 现在在包中创建一个名为 MyResource   的类,内容如下所示:package org.acme;  import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType;  @Path("/") @Produces({MediaType.TEXT_PLAIN}) public class MyResource {     @GET     public String message() {         return "Hi";     } }
  注意:   您可能想知道为什么在前面的代码片段中没有一个导入行是 Quarkus 特定的。 Quarkus 通过利用不断增长的 50 多个同类最佳库的列表,提供了一个有凝聚力的全栈框架。 在前面的示例中,我们使用 JAX-RS,这是一种构建 HTTP 和 REST API 的简单但高效且灵活的方法。
  刷新  http://localhost:8080。 哇,我们现在在浏览器中看到了  Hi  ; 发生了什么? 查看终端窗口如下: INFO [io.qua.dep.dev.RuntimeUpdatesProcessor] (vert.x-worker-thread-7)   Changed source files detected, recompiling   [{pathToProject}/code-with-quarkus/src/main/java/org/acme/MyResource.java] INFO [io.quarkus] (Quarkus Main Thread) code-with-quarkus stopped in 0.037s __ ____ __ _____ ___ __ ____ ______  --/ __ / / / / _ | / _ / //_/ / / / __/  -/ /_/ / /_/ / __ |/ , _/ ,< / /_/ /  --________/_/ |_/_/|_/_/|_|____/___/ INFO [io.quarkus] (Quarkus Main Thread) code-with-quarkus 1.0.0-SNAPSHOT on JVM   (powered by Quarkus 1.11.1.Final) started in 0.195s.   Listening on: http://localhost:8080 INFO [io.quarkus] (Quarkus Main Thread) Profile dev activated. Live Coding activated INFO [io.quarkus] (Quarkus Main Thread) Installed features: [cdi, resteasy] INFO [io.qua.dep.dev.RuntimeUpdatesProcessor] (vert.x-worker-thread-7)   Hot replace total time: 0.291s
  我们可以看到 Quarkus 注意到对  MyResource.java   的修改,停止,然后重新启动。 查看已安装的功能,我们看到它现在包含了 resteasy  。 多么酷啊? 更好的是,服务器在 300 多毫秒内停止并重新启动。
  我们为什么不探索更多的实时重新加载以更好地感受真正的开发者喜悦! 在  mvn quarkus:dev   仍在运行的情况下,在浏览器中打开 http://localhost:8080/welcome(图 3)。
  图 3
  不好了,我们有一个错误!
  不要太害怕; 我们确实期待它,因为我们还没有任何东西可以响应  /welcome   端点。 但是,Quarkus 为我们提供了一些链接,以帮助根据它对应用程序的了解来诊断问题。 我们看到了有效端点的列表——在这种情况下,/   上只有一个 HTTP GET。
  在 "Additional endpoints," 下,有一些端点可以在开发应用程序时提供帮助。 在此示例中,我们有与  ArC   相关的端点,这是基于 Quarkus 的上下文和依赖注入 (CDI) 的 bean 容器,以及到开发人员控制台的链接。 单击开发者控制台链接将带您进入其主页。
  现在没有很多,但我们需要记住,我们添加的唯一扩展是 RESTEasy。 随着我们使用更多扩展来增强应用程序,开发人员控制台将提供更多选项和功能。 我们在那里走了一条支线,所以让我们回到解决页面加载失败的问题上! 随着  /welcome   页面在浏览器中打开失败,回到源代码并创建一个名为  WelcomeResource   的新类如下: @Path("/welcome") public class WelcomeResource {  @GET  public String welcomeMessage() {     return "Welcome to Quarkus!";  } }
  编写完类后,返回浏览器并单击 Refresh。
  触发 HTTP 请求会导致 Quarkus 检查自上次请求以来是否有任何文件被修改,因为我们正在运行实时重新加载。 Quarkus 注意到  WelcomeResource   的存在,对其进行编译,然后重新启动服务器。 如果您像我们一样,您可能没有意识到幕后发生的一切,因为浏览器立即给出了预期的响应。
  这是关于第一次使用 https://code.quarkus.io 创建 Quarkus 项目以及体验使用 Quarkus 实时重新加载带来的轻松开发的大量信息。 它确实有缺点,包括在编译和重新启动期间喝咖啡的机会较少。 我们将继续探索实时重新加载可以完成的所有章节,但您可以自己试一试,添加新的扩展,看看可以在不停止的情况下完成什么!
  那么下一篇我们看看在 Kubernetes 使用 Quarkus!

每天坚持吃一个煮熟的苹果,会有哪些好处?医生2类人应该多吃苹果是生活中常见的一种水果,在民间有着水果之王的称号,根据调查发现,很多长寿老人都有每天吃一个苹果的习惯。苹果吃起来酸酸甜甜得非常美味,能够促进胃酸分泌,促进食欲,其中还含有丰富的现在才明白,红薯不能随便吃,为了健康,这10个禁忌需牢记这个季节是红薯上市的时候,很多人特别喜欢吃烤红薯,色香味俱全,口感软糯,非常美味。同时能满足人的正常需求,可帮助强身健体。但是红薯不能乱吃,我们需要提前了解它所存在的服用禁忌,还能贪吃贪睡,添病减岁提醒中老年做好5点,或助老人健康长寿当今社会,人们处于快节奏的生活当中,压力也越来越大,吃饭没有胃口,还特别容易失眠,睡不好觉。但是,有一部人,他们照样吃得饱,睡得好,可是身体状况却不怎么样,其实,这也是隐形中对身体人去世后为什么不能穿自己漂亮的衣服,却穿寿衣,有哪些讲究?寿衣为什么要叫寿衣?古代的寿衣又称老衣裳,是老人生前就做好死后要穿的衣服,美称寿衣,取健康长寿之意。做寿衣一般要在古历闰年做,因古历闰年比平年多一个月,闰年做寿衣,寓意为老人增寿。惊艳!扬州长江边竟然藏着一处童话般的梦幻田园大片的向日葵花田,五彩缤纷的墙体彩绘,在童话故事中才会出现的梦幻乡村,在扬州,竟然有同款!最近,小编发现了瓜洲一处免费的乡村旅游景点在这里,或许你可以品味到王维诗里的秋色!它,就是经济日报携手京东发布数据双11带热消费需求数据来源京东消费及产业发展研究院线上线下互动提振实体经济一年一度的双11促销活动正如火如荼地开展。从第一波促销活动的售卖数据可以看出,消费者信心指数快速回升,商家和市场活力逐步增强哈利波特与凤凰社全彩绘本中文版上市本报讯(记者李婧璇)距离人民文学出版社推出哈利波特系列小说第四部哈利波特与火焰杯全彩绘本中文版近3年的时候,系列第五部哈利波特与凤凰社全彩绘本中文版近日上市。11月5日,哈利波特与全国乒乓球锦标赛产生男女单四强新华社湖北黄石11月10日电(记者乐文婉徐鹏航)10日晚,在湖北省黄石市举行的全国乒乓球锦标赛决出男女单打四强。樊振东林高远牛冠凯刘丁硕晋级男单半决赛王艺迪陈幸同王曼昱孙铭阳则会师房产暴富不过黄粱一梦,日本房价究竟是怎么跌下来的?有何教训?2012年7月13日,一套位于东京都南麻布,面积约410平方米的公寓标出18亿日元的售价,成为全球最贵的公寓。如此贵的公寓说明东京依旧还是寸土寸金之地,但是这个价格相比较历史上的最林海雪原诉说你所不了解的大兴安岭地区这里是祖国最北部的边疆,北面与俄罗斯隔江相望,南接黑河市,西邻内蒙古自治区。全区面积8。3万平方公里,这块土地即使放在全国各省的排行榜中也能排到26位。这里是林与雪的海洋,也是动物名城南昌(80)201715昨晚九点左右坐高铁,一个小时就从九江来到了南昌市区,在离赣江边不远的一家小旅店住宿一夜后,今天(二十七日)用一上午时间,依次游览参观瞻仰了滕王阁江西省博物馆和八一起义纪念馆,然后到
夏天就穿这40条长裤!凉快又显瘦,爽爆了hievbd!最近又是热shi人的一天!家和办公室都是天堂我这条命真的是空调给的!特别是配上半个西瓜这才是夏天正确的打开方式吧不过啊,夏天我还是很少穿短裤的因为一旦晒黑,就很难恢复苦等34年!元年后跟火焰红AJ3上脚图终于有了这两年对于喜欢OG的球鞋玩家来说简直太爽了。继大魔王AirJordan11季后赛AirJordan12相继回归后,近日元年火焰红AirJordan3确认今年正式发售。随着发售日期临预测状元,跌到第三顺位!火箭探花,打了5场夏季联赛,表现如何本届NBA选秀大会开启之前,小贾巴里史密斯在很长一段时间都被预测为状元。但令人意想不到的是,选秀夜当晚,魔术却临时变卦,第一顺位选择了班切罗。由于雷霆榜眼人选早已固定为霍姆格伦,导曼联转会操作签约3人花费7237万欧,离队8人入账950万曼联官宣签下利桑德罗马丁内斯,他成为红魔今夏第三签约。今年夏天,由于滕哈格的入主,曼联阵容进行了大换血。目前,球队引入3人,离队8人。引援方面,曼联先以1500欧从费耶诺德引入边后NBA10位改变联盟球星库里领衔,乔丹无解单打让联盟被迫改规则在NBA里判定一名球员的能力是否出众,我认为除了荣誉和纪录之外,能否让联盟修改规则改变打法也是同样关键,艾弗森只有一个常规赛MVP,没有总冠军,你能说他不如2个MVP的纳什吧?纳什萨默尔拜仁签30岁的马内但多特有年轻新援,为何不能想当第一直播吧7月18日讯多特球队顾问萨默尔在图片报的节目中表示,他们要认可拜仁今夏引援对实力的补强,而年轻球员的加盟也应该让多特敢于剑指第一。拜仁今夏已经签下马内,德里赫特也即将加盟。萨热火欲复刻詹韦时代,八换一交易杜兰特,新三巨头傲世联盟布鲁克林风云仍旧没有消停,NBA自由市场之十上依然有篮网和杜兰特的声音,鉴于之前篮网的要价太夸张,连NBA睿智的logo男都感叹很少有球队可以出得起能够获得KD的资源(主要是包括球比赛继续!国乒收获外卡,9位世界冠军征战WTT冠军赛,附今日赛程北京时间7月17日晚,布达佩斯WTT欧洲夏季系列赛之WTT球星挑战赛正式落下帷幕。国乒在本次比赛中收获颇丰,以4冠2亚成为最大赢家,其中王炸组合王楚钦和王曼昱则成为赛事仅有的两位双27岁的嘴哥,他真的还能有长足进步吗今年勇士夺冠后,就有很多人希望勇士能够留下维金斯,原因就是维金斯在今年季后赛的表现很出色,特别是总决赛期间,攻防一体,场均得分位居队内第二,防守端能量十足。维金斯在季后赛期间获得了盘点付出大量选秀权交易球星的成功案例湖人得AD火箭得哈登(译者注本文作者为SportingNews作家ScottRafferty,文中内容不代表译者和平台观点)凯文杜兰特。凯里欧文。多诺万米切尔。自由球员市场的热度可能正在下降,但涉及少吃鸡7月22日新军需实装效果!恐龙自带泳圈,尾巴长在腰间务实不浮夸!我是你们的情报小能手,微笑十倍镜。本期给大家分享一下,即将在7月22日上线的新军需实战效果。众所周知,吃鸡手游和平精英的新军需只要在近期上架,那么全套皮肤一定会在前几天