首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Quarkus本机和org.kohsuke:github-api -解析期间未解析的方法- @WithBridgeMethods注释方法

Quarkus本机和org.kohsuke:github-api -解析期间未解析的方法- @WithBridgeMethods注释方法
EN

Stack Overflow用户
提问于 2020-05-09 08:25:48
回答 1查看 738关注 0票数 0

Quarkus本机和org.kohsuke:github-api -解析期间未解析的方法- @WithBridgeMethods注释方法

这是Quarkus本机和org.kohsuke:github-api -未能反序列化异常问题的后续,我使用https://github.com/quarkusio/quarkus/pull/9182修补程序来克服注册,以便使用私有内部类GHRepository.GHRepoPermission.class进行反射挑战。

我不得不将GHLicense.class添加到@RegisterForReflection中,现在我的示例应用程序在本机编译过程中失败了:发现了未解决的方法。

代码语言:javascript
运行
复制
[getting-started-1.0-SNAPSHOT-runner:42440]     analysis:  60,222.05 ms,  6.04 GB
Error: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered unresolved method during parsing: org.kohsuke.github.GHLicense.urlToString(java.net.URL, java.lang.Class). To diagnose the issue you can use the --allow-incomplete-classpath option. The missing method is then reported at run time when it is accessed the first time.
Detailed message:
Trace:
    at parsing org.kohsuke.github.GHLicense.getUrl(GHLicense.java)
Call path from entry point to org.kohsuke.github.GHLicense.getUrl():
    at org.kohsuke.github.GHLicense.getUrl(GHLicense.java)
    at com.oracle.svm.reflect.GHObject_getUrl_d595a42af79d3a07fda24477277adddcaeacd46d_608.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Method.java:566)
    at org.jboss.resteasy.core.ContextParameterInjector$GenericDelegatingProxy.invoke(ContextParameterInjector.java:122)

https://github.com/hub4j/github-api/blob/master/src/main/java/org/kohsuke/github/GHLicense.java#L84 getUrl()方法使用@WithBridgeMethods注释

代码语言:javascript
运行
复制
    @WithBridgeMethods(value = String.class, adapterMethod = "urlToString")
    public URL getUrl() {
        return GitHubClient.parseURL(url);
    }

有什么解决办法的建议吗?还是这纯粹是GraalVM的事?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-09 11:50:42

这纯粹是一个GraalVM问题,为了解决这个问题,惟一的方法(我知道除了在实际库中更改代码之外)是创建一个Quarkus扩展,它将替代库中令人不快的部分。

更新

Quarkus扩展本质上使库在本机模式下正常工作,并且是夸库斯博特应用程序的基础,该应用程序在Quarkus GitHub存储库中用于各种任务。

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

https://stackoverflow.com/questions/61693823

复制
相关文章

相似问题

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