我的问题似乎类似于运行在Quarkus(gradle)上的多模块项目中的ClassCastException。
不过我用的是maven。我可以确认在使用转轮或测试时没有出现问题。我创建了一个示例应用程序,在https://github.com/AmsterdamFilho/quarkus-poc.
如果在开发模式下运行应用程序,并使用swagger ui或curl执行endpoint,则会出现异常:
引起原因:java.lang.ClassCastExcture:类br.com.quarkus.poc.AnimalKindService_ClientProxy不能强制转换为类br.com.quarkus.poc.AnimalKindService(br.com.quarkus.poc.AnimalKindService_ClientProxy在加载器'app'的未命名模块中;br.com.quarkus.poc.AnimalKindService在加载器的未命名模块中io.quarkus.runner.RuntimeClassLoader@7c6908d7)
Quarkus的版本是1.1.1。
任何解决办法都将不胜感激。
这可能是类装入器的问题。我们在master中有一个全新的类加载器设计,将在Quarkus 1.3中发布(大约一个月后)。
如果您使用master,您能测试您的问题是否已解决吗?
您可以使用mvn clean install-DskipTests-DskipITs
本地构建它,然后使用999-SNAPSHOT
作为版本,或者我们在此处发布快照:https://oss.sonatype.org/content/repositories/snapshots/io/quarkus/ .
注意:您将需要使用QUIKUS-BOM
来进行此测试,以便在您的POM中更改,如果您指向QUIKUS-COONES-BOM
。
谢谢你的检查。
我似乎在多模块项目中遇到了奇怪的classcast异常。以下是项目结构的简要概述: 我已经创建了一个小testresource,在这里我注入了一些服务,一个EntityManager等等。一切似乎都在工作,除了我得到了非常奇怪的ClassCastException JAVAClassCastException:class com。大地测量学。查询结构。选择器。SampleRequestSelect
我是新来的,并尝试在Maven多模块项目中使用它。我的项目结构如下: 应用程序模块执行具有构建目标的quarkus maven插件。包含一个简单的rest控制器,因此也包含一个在中。RESTAPI模块由应用程序模块引用。 如果我使用打包整个项目,那么生成的runner jar将按预期工作。但是,如果我尝试使用在开发模式下启动项目,我会遇到以下异常: 错误]无法执行目标io。quarkus:quar
在根中应用Quarkus插件的多模块gradle项目在步骤失败,出现: 根如下所示: 但是,将行移动到子项目的中,生成将成功。看来quarkus构建步骤是在插件声明的地方运行的,而不是在插件实际应用的地方。 理想情况下,我希望在根项目中声明一次插件,然后仅将其应用于子项目,而不是在根项目中执行它,在根项目中显然没有什么可构建的。 有什么想法吗?
问题内容: 我有学习的背景和思想。 我喜欢使用的其中一项功能是可以将项目制作为多Maven模块。例? 令人高兴的是,每个模块都可以具有自己的依赖性,并且可以独立测试它们,而不用运行一个整体应用程序。 我们如何实现类似的东西,或者它的生态系统? 问题答案: 你绝对可以做到的。这被称为SBT Multi-Project build。您可以使用以下内容定义一个主项目和多个子项目(来自上面的docs链接)
我曾广泛使用过Maven 目前有5个不同的maven项目,每个项目都有一个不同的pom.xml。到目前为止,它们之间存在依赖关系,如果需要,每一个都指向 中的另一个。 现在我们不喜欢的是 当我们发布子projectA时,我们需要手动修改所有将projectA作为依赖项的项目以使用新版本。Saw Maven有一个版本插件,不知道这会有什么帮助。 作为解决方案,我希望在POM之间有一个更干净的组织,并
关于maven项目结构,我有两个问题: 1)我正在创建一个maven多模块项目,并且想知道是否可以将模块的所有公共依赖项放在父POM中?这是正确的做法吗? 2)如果我正在创建一个包含所有web.xml和JSP文件的maven webapp项目,那么web控制器、侦听器和模型对象应该驻留在哪里?在一个单独的maven jar项目中还是在同一个webapp项目中?