Skip to content

cryptic exception when overloaded methods #620

Open
@maxandersen

Description

void onDiscussion(@Discussion.Created GHEventPayload.Discussion discussionPayload, DynamicGraphQLClient gitHubGraphQLClient) throws IOException {
        addComment(gitHubGraphQLClient, discussionPayload.getDiscussion(), "Hello from my jconqbot App");
    }

    void onDiscussion(@DiscussionComment.Created GHEventPayload.DiscussionComment discussionCommentPayload, DynamicGraphQLClient gitHubGraphQLClient) throws IOException {
        addComment(gitHubGraphQLClient, discussionCommentPayload.getDiscussion(), "Another Hello from my jconqbot App");
    }

is valid java but gives this error:

java.lang.RuntimeException: io.quarkus.builder.BuildException: Build failure: Build failed due to errors
        [error]: Build step io.quarkus.arc.deployment.ArcProcessor#registerBeans threw an exception: jakarta.enterprise.inject.spi.DefinitionException: Multiple event parameters found for void onDiscussion_9c21b751bd1c3c76c9e9f8d4cbcacbc05e9e7ed7(io.quarkiverse.githubapp.runtime.MultiplexedEvent) throws java.io.IOException, java.io.IOException
        at io.quarkus.arc.processor.ObserverInfo.initEventParam(ObserverInfo.java:365)
        at io.quarkus.arc.processor.ObserverInfo.create(ObserverInfo.java:47)
        at io.quarkus.arc.processor.BeanDeployment.registerObserverMethods(BeanDeployment.java:1377)
        at io.quarkus.arc.processor.BeanDeployment.findBeans(BeanDeployment.java:1315)
        at io.quarkus.arc.processor.BeanDeployment.registerBeans(BeanDeployment.java:278)
        at io.quarkus.arc.processor.BeanProcessor.registerBeans(BeanProcessor.java:146)
        at io.quarkus.arc.deployment.ArcProcessor.registerBeans(ArcProcessor.java:438)
        at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
        at java.base/java.lang.reflect.Method.invoke(Method.java:580)
        at io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:849)
        at io.quarkus.builder.BuildContext.run(BuildContext.java:256)
        at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
        at org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2516)
        at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2495)
        at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1521)
        at java.base/java.lang.Thread.run(Thread.java:1583)
        at org.jboss.threads.JBossThread.run(JBossThread.java:483)

        at io.quarkus.runner.bootstrap.AugmentActionImpl.runAugment(AugmentActionImpl.java:337)
        at io.quarkus.runner.bootstrap.AugmentActionImpl.reloadExistingApplication(AugmentActionImpl.java:267)
        at io.quarkus.runner.bootstrap.AugmentActionImpl.reloadExistingApplication(AugmentActionImpl.java:60)
        at io.quarkus.deployment.dev.IsolatedDevModeMain.restartApp(IsolatedDevModeMain.java:190)
        at io.quarkus.deployment.dev.IsolatedDevModeMain.restartCallback(IsolatedDevModeMain.java:173)
        at io.quarkus.deployment.dev.RuntimeUpdatesProcessor.doScan(RuntimeUpdatesProcessor.java:542)
        at io.quarkus.deployment.console.ConsoleStateManager.forceRestart(ConsoleStateManager.java:175)
        at io.quarkus.deployment.console.ConsoleStateManager.lambda$installBuiltins$0(ConsoleStateManager.java:112)
        at io.quarkus.deployment.console.ConsoleStateManager$1.accept(ConsoleStateManager.java:77)
        at io.quarkus.deployment.console.ConsoleStateManager$1.accept(ConsoleStateManager.java:49)
        at io.quarkus.deployment.console.AeshConsole.lambda$setup$1(AeshConsole.java:278)
        at org.aesh.terminal.EventDecoder.accept(EventDecoder.java:118)
        at org.aesh.terminal.EventDecoder.accept(EventDecoder.java:31)
        at org.aesh.terminal.io.Decoder.write(Decoder.java:133)
        at org.aesh.readline.tty.terminal.TerminalConnection.openBlocking(TerminalConnection.java:216)
        at org.aesh.readline.tty.terminal.TerminalConnection.openBlocking(TerminalConnection.java:203)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
        at java.base/java.lang.Thread.run(Thread.java:1583)
Caused by: io.quarkus.builder.BuildException: Build failure: Build failed due to errors
        [error]: Build step io.quarkus.arc.deployment.ArcProcessor#registerBeans threw an exception: jakarta.enterprise.inject.spi.DefinitionException: Multiple event parameters found for void onDiscussion_9c21b751bd1c3c76c9e9f8d4cbcacbc05e9e7ed7(io.quarkiverse.githubapp.runtime.MultiplexedEvent) throws java.io.IOException, java.io.IOException
        at io.quarkus.arc.processor.ObserverInfo.initEventParam(ObserverInfo.java:365)
        at io.quarkus.arc.processor.ObserverInfo.create(ObserverInfo.java:47)
        at io.quarkus.arc.processor.BeanDeployment.registerObserverMethods(BeanDeployment.java:1377)
        at io.quarkus.arc.processor.BeanDeployment.findBeans(BeanDeployment.java:1315)
        at io.quarkus.arc.processor.BeanDeployment.registerBeans(BeanDeployment.java:278)
        at io.quarkus.arc.processor.BeanProcessor.registerBeans(BeanProcessor.java:146)
        at io.quarkus.arc.deployment.ArcProcessor.registerBeans(ArcProcessor.java:438)
        at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
        at java.base/java.lang.reflect.Method.invoke(Method.java:580)
        at io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:849)
        at io.quarkus.builder.BuildContext.run(BuildContext.java:256)
        at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
        at org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2516)
        at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2495)
        at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1521)
        at java.base/java.lang.Thread.run(Thread.java:1583)
        at org.jboss.threads.JBossThread.run(JBossThread.java:483)

        at io.quarkus.builder.Execution.run(Execution.java:123)
        at io.quarkus.builder.BuildExecutionBuilder.execute(BuildExecutionBuilder.java:79)
        at io.quarkus.deployment.QuarkusAugmentor.run(QuarkusAugmentor.java:160)
        at io.quarkus.runner.bootstrap.AugmentActionImpl.runAugment(AugmentActionImpl.java:333)
        ... 18 more
Caused by: jakarta.enterprise.inject.spi.DefinitionException: Multiple event parameters found for void onDiscussion_9c21b751bd1c3c76c9e9f8d4cbcacbc05e9e7ed7(io.quarkiverse.githubapp.runtime.MultiplexedEvent) throws java.io.IOException, java.io.IOException
        at io.quarkus.arc.processor.ObserverInfo.initEventParam(ObserverInfo.java:365)
        at io.quarkus.arc.processor.ObserverInfo.create(ObserverInfo.java:47)
        at io.quarkus.arc.processor.BeanDeployment.registerObserverMethods(BeanDeployment.java:1377)
        at io.quarkus.arc.processor.BeanDeployment.findBeans(BeanDeployment.java:1315)
        at io.quarkus.arc.processor.BeanDeployment.registerBeans(BeanDeployment.java:278)
        at io.quarkus.arc.processor.BeanProcessor.registerBeans(BeanProcessor.java:146)
        at io.quarkus.arc.deployment.ArcProcessor.registerBeans(ArcProcessor.java:438)
        at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
        at java.base/java.lang.reflect.Method.invoke(Method.java:580)
        at io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:849)
        at io.quarkus.builder.BuildContext.run(BuildContext.java:256)
        at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
        at org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2516)
        at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2495)
        at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1521)
        at java.base/java.lang.Thread.run(Thread.java:1583)
        at org.jboss.threads.JBossThread.run(JBossThread.java:483)

"Multiple event parameters" isn't the issue from a user perspective. could it handle the overladed names or state that multiple methods with same name is the issue?

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions