首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >构建本地quarkus失败的原因是什么

构建本地quarkus失败的原因是什么
EN

Stack Overflow用户
提问于 2021-01-13 21:26:57
回答 1查看 142关注 0票数 1

尝试构建本机quarkus时,如果添加json路径https://github.com/json-path/JsonPath,则会出现错误

代码语言:javascript
运行
复制
Call path from entry point to java.lang.ClassLoader.defineClass(String, byte[], int, int, ProtectionDomain): 
    at java.lang.ClassLoader.defineClass(ClassLoader.java:1015)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:878)
    at net.minidev.asm.DynamicClassLoader.defineClass(DynamicClassLoader.java:86)
    at net.minidev.asm.BeansAccessBuilder.bulid(BeansAccessBuilder.java:313)
    at net.minidev.asm.BeansAccess.get(BeansAccess.java:111)
    at net.minidev.json.reader.BeansWriterASM.writeJSONString(BeansWriterASM.java:17)

或者使用选项--report-unsupported elements at- with

代码语言:javascript
运行
复制
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
    at java.base/java.util.concurrent.ForkJoinTask.getThrowableException(ForkJoinTask.java:603)
    at java.base/java.util.concurrent.ForkJoinTask.get(ForkJoinTask.java:1006)
    at com.oracle.svm.hosted.NativeImageGenerator.run(NativeImageGenerator.java:480)
    at com.oracle.svm.hosted.NativeImageGeneratorRunner.buildImage(NativeImageGeneratorRunner.java:349)
    at com.oracle.svm.hosted.NativeImageGeneratorRunner.build(NativeImageGeneratorRunner.java:508)
    at com.oracle.svm.hosted.NativeImageGeneratorRunner.main(NativeImageGeneratorRunner.java:114)
    at com.oracle.svm.hosted.NativeImageGeneratorRunner$JDK9Plus.main(NativeImageGeneratorRunner.java:537)
Caused by: java.lang.NoClassDefFoundError: javax/security/jacc/EJBMethodPermission

有没有什么我能做的,或者这是个bug?使用docker进行编译,它在jvm模式下工作

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-01-16 07:22:54

如果不查看库代码,就很难判断。

Quarkus通过添加本机模式所需的部分,尽最大努力集成库并使其在本机模式下工作。有关本机模式的限制,请查看此链接:https://www.graalvm.org/reference-manual/native-image/Limitations/

有些库可以开箱即用,不需要额外的配置。其他则需要额外配置以符合本机映像规则。

该库似乎试图将类动态添加到ClassLoader中,由于封闭世界假设,这在GraalVM中是不受支持的,除非这些类在构建时注册。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65702932

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档