我开始玩 quarkus 和 graalvm。我将文件(txt 和 jpg)添加到项目 ( src/main/resources/) 中的资源中。为了确保我可以在控制器中访问该文件,我显示了它的大小:
URL url = Thread.currentThread().getContextClassLoader().getResource("/Resource2.txt");\nFile file = new File(url.toURI());\nreturn "Hello My Friend! File size in bytes = " + file.length();\nRun Code Online (Sandbox Code Playgroud)\n当我用 maven ( mvn quarkus:dev) 运行它时,它就可以工作了。控制器代码在这里。
当我创建本机 Quarkus 应用程序并尝试在 docker 内运行时出现问题。\n为了确保该文件包含在本机映像中,我添加了一个大 jpg 文件 (3.3MB),创建了resources-config.json:
{ "resources": \n { "includes": [\n { "pattern": "IMG_3_3M\\\\.jpg$"},\n { "pattern": "Resources2\\\\.txt$"}\n ]\n}}\nRun Code Online (Sandbox Code Playgroud)\n并application.properties添加:\n quarkus.native.additional-build-args = -H:ResourceConfigurationFiles=resources-config.json。原生跑步者尺寸增加自:
39M Mar 21 12:48 hello-quarkus-1.0-SNAPSHOT-runner …我已经使用原型生成了一个新项目,并且运行了以下 Maven
./mvnw -Dskiptests clean package
它应该构建两个 jar 文件 xxx.jar 和 xx-runner.jar 但它只构建一个 (xxx.jar)。
我已经配置了 JAVA_HOME 和 GRAALVM_HOME 指向我下载的 GraalVM。
我已经安装了本机映像。
我的操作系统是UBUNTU
Maven 应该构建两个 JAR 文件,但我不知道为什么。有人可以帮助我吗?
[INFO] Scanning for projects...
[INFO]
[INFO] ----------------< es.olivar.jaen:atomic-fruit-service >-----------------
[INFO] Building atomic-fruit-service 1.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ atomic-fruit-service ---
[INFO] Deleting /home/sobremesa/Documents/Develop/java/quarkus/poc/atomic-fruit-service/target
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ atomic-fruit-service ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 2 resources
[INFO]
[INFO] --- quarkus-maven-plugin:2.11.3.Final:generate-code (default) @ …Run Code Online (Sandbox Code Playgroud) 我有一个作为 REST API 公开的 Quarkus 应用程序。我需要为该应用程序生成配置文件引导的优化本机映像。
我查看了 Quarkus 文档,但找不到太多内容。有人生成过相同的吗?
我在本地计算机上安装了 GraalVM Enterprise 版本。
要生成正常的本机映像,请使用以下命令:
./mvnw package -Dnative