-
Bug
-
Resolution: Done
-
Major
-
None
-
None
-
1
-
2020 Week 10-12 (from Mar 2)
reproducer at https://github.com/evacchi/sample-kogito/tree/oopath-error-message
$ mvn clean compile quarkus:dev
steps to reproduce
- create java file `org.acme.kogito.model.PersonRules` notice model subpackage
- add DataStore<Person> person
- create drl in package `org.acme.kogito` unit `PersonRules`
- create rule that uses person as oopath
error message is unclear
[INFO] --- quarkus-maven-plugin:1.2.0.Final:dev (default-cli) @ sample-kogito --- Listening for transport dt_socket at address: 5005 13:44:17,942 INFO [org.jbo.threads] JBoss Threads version 3.0.0.Final 13:44:19,174 ERROR [io.qua.dev.DevModeMain] Failed to start Quarkus: java.lang.RuntimeException: io.quarkus.builder.BuildException: Build failure: Build failed due to errors [error]: Build step io.quarkus.kogito.deployment.KogitoAssetsProcessor#generateModel threw an exception: java.lang.IllegalArgumentException: Unknown declaration: person at org.drools.modelcompiler.builder.generator.visitor.pattern.PatternVisitor.normalizeOOPathPattern(PatternVisitor.java:90) at org.drools.modelcompiler.builder.generator.visitor.pattern.PatternVisitor.visit(PatternVisitor.java:57) at org.drools.modelcompiler.builder.generator.visitor.ModelGeneratorVisitor.visit(ModelGeneratorVisitor.java:128) at org.drools.compiler.lang.descr.PatternDescr.accept(PatternDescr.java:272) at org.drools.modelcompiler.builder.generator.visitor.AndVisitor.visit(AndVisitor.java:33) at org.drools.modelcompiler.builder.generator.visitor.ModelGeneratorVisitor.visit(ModelGeneratorVisitor.java:69) at org.drools.modelcompiler.builder.generator.ModelGenerator.processRule(ModelGenerator.java:177) at org.drools.modelcompiler.builder.generator.ModelGenerator.generateModel(ModelGenerator.java:156) at org.drools.modelcompiler.builder.ModelBuilderImpl.compileKnowledgePackages(ModelBuilderImpl.java:174) at org.drools.modelcompiler.builder.ModelBuilderImpl.buildRules(ModelBuilderImpl.java:118) at org.drools.modelcompiler.builder.ModelBuilderImpl.buildPackages(ModelBuilderImpl.java:74) at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:105) at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:97) at org.kie.kogito.codegen.rules.IncrementalRuleCodegen.generate(IncrementalRuleCodegen.java:183) at org.kie.kogito.codegen.rules.IncrementalRuleCodegen.generate(IncrementalRuleCodegen.java:67) at org.kie.kogito.codegen.ApplicationGenerator.lambda$generateComponents$7(ApplicationGenerator.java:215) at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:271) at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1654) at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484) at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474) at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913) at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578) at org.kie.kogito.codegen.ApplicationGenerator.generateComponents(ApplicationGenerator.java:216) at org.kie.kogito.codegen.ApplicationGenerator.generate(ApplicationGenerator.java:200) at io.quarkus.kogito.deployment.KogitoAssetsProcessor.generateModel(KogitoAssetsProcessor.java:166) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at io.quarkus.deployment.ExtensionLoader$2.execute(ExtensionLoader.java:915) at io.quarkus.builder.BuildContext.run(BuildContext.java:279) at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35) at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2011) at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1535) at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1426) at java.base/java.lang.Thread.run(Thread.java:834) at org.jboss.threads.JBossThread.run(JBossThread.java:479) at io.quarkus.runner.RuntimeRunner.run(RuntimeRunner.java:181) at io.quarkus.dev.DevModeMain.doStart(DevModeMain.java:178) at io.quarkus.dev.DevModeMain.start(DevModeMain.java:96) at io.quarkus.dev.DevModeMain.main(DevModeMain.java:67) Caused by: io.quarkus.builder.BuildException: Build failure: Build failed due to errors [error]: Build step io.quarkus.kogito.deployment.KogitoAssetsProcessor#generateModel threw an exception: java.lang.IllegalArgumentException: Unknown declaration: person at org.drools.modelcompiler.builder.generator.visitor.pattern.PatternVisitor.normalizeOOPathPattern(PatternVisitor.java:90) at org.drools.modelcompiler.builder.generator.visitor.pattern.PatternVisitor.visit(PatternVisitor.java:57) at org.drools.modelcompiler.builder.generator.visitor.ModelGeneratorVisitor.visit(ModelGeneratorVisitor.java:128) at org.drools.compiler.lang.descr.PatternDescr.accept(PatternDescr.java:272) at org.drools.modelcompiler.builder.generator.visitor.AndVisitor.visit(AndVisitor.java:33) at org.drools.modelcompiler.builder.generator.visitor.ModelGeneratorVisitor.visit(ModelGeneratorVisitor.java:69) at org.drools.modelcompiler.builder.generator.ModelGenerator.processRule(ModelGenerator.java:177) at org.drools.modelcompiler.builder.generator.ModelGenerator.generateModel(ModelGenerator.java:156) at org.drools.modelcompiler.builder.ModelBuilderImpl.compileKnowledgePackages(ModelBuilderImpl.java:174) at org.drools.modelcompiler.builder.ModelBuilderImpl.buildRules(ModelBuilderImpl.java:118) at org.drools.modelcompiler.builder.ModelBuilderImpl.buildPackages(ModelBuilderImpl.java:74) at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:105) at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:97) at org.kie.kogito.codegen.rules.IncrementalRuleCodegen.generate(IncrementalRuleCodegen.java:183) at org.kie.kogito.codegen.rules.IncrementalRuleCodegen.generate(IncrementalRuleCodegen.java:67) at org.kie.kogito.codegen.ApplicationGenerator.lambda$generateComponents$7(ApplicationGenerator.java:215) at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:271) at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1654) at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484) at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474) at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913) at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578) at org.kie.kogito.codegen.ApplicationGenerator.generateComponents(ApplicationGenerator.java:216) at org.kie.kogito.codegen.ApplicationGenerator.generate(ApplicationGenerator.java:200) at io.quarkus.kogito.deployment.KogitoAssetsProcessor.generateModel(KogitoAssetsProcessor.java:166) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at io.quarkus.deployment.ExtensionLoader$2.execute(ExtensionLoader.java:915) at io.quarkus.builder.BuildContext.run(BuildContext.java:279) at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35) at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2011) at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1535) at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1426) at java.base/java.lang.Thread.run(Thread.java:834) at org.jboss.threads.JBossThread.run(JBossThread.java:479) at io.quarkus.builder.Execution.run(Execution.java:108) at io.quarkus.builder.BuildExecutionBuilder.execute(BuildExecutionBuilder.java:79) at io.quarkus.deployment.QuarkusAugmentor.run(QuarkusAugmentor.java:128) at io.quarkus.runner.RuntimeRunner.run(RuntimeRunner.java:114) ... 3 more Caused by: java.lang.IllegalArgumentException: Unknown declaration: person at org.drools.modelcompiler.builder.generator.visitor.pattern.PatternVisitor.normalizeOOPathPattern(PatternVisitor.java:90) at org.drools.modelcompiler.builder.generator.visitor.pattern.PatternVisitor.visit(PatternVisitor.java:57) at org.drools.modelcompiler.builder.generator.visitor.ModelGeneratorVisitor.visit(ModelGeneratorVisitor.java:128) at org.drools.compiler.lang.descr.PatternDescr.accept(PatternDescr.java:272) at org.drools.modelcompiler.builder.generator.visitor.AndVisitor.visit(AndVisitor.java:33) at org.drools.modelcompiler.builder.generator.visitor.ModelGeneratorVisitor.visit(ModelGeneratorVisitor.java:69) at org.drools.modelcompiler.builder.generator.ModelGenerator.processRule(ModelGenerator.java:177) at org.drools.modelcompiler.builder.generator.ModelGenerator.generateModel(ModelGenerator.java:156) at org.drools.modelcompiler.builder.ModelBuilderImpl.compileKnowledgePackages(ModelBuilderImpl.java:174) at org.drools.modelcompiler.builder.ModelBuilderImpl.buildRules(ModelBuilderImpl.java:118) at org.drools.modelcompiler.builder.ModelBuilderImpl.buildPackages(ModelBuilderImpl.java:74) at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:105) at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:97) at org.kie.kogito.codegen.rules.IncrementalRuleCodegen.generate(IncrementalRuleCodegen.java:183) at org.kie.kogito.codegen.rules.IncrementalRuleCodegen.generate(IncrementalRuleCodegen.java:67) at org.kie.kogito.codegen.ApplicationGenerator.lambda$generateComponents$7(ApplicationGenerator.java:215) at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:271) at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1654) at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484) at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474) at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913) at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578) at org.kie.kogito.codegen.ApplicationGenerator.generateComponents(ApplicationGenerator.java:216) at org.kie.kogito.codegen.ApplicationGenerator.generate(ApplicationGenerator.java:200) at io.quarkus.kogito.deployment.KogitoAssetsProcessor.generateModel(KogitoAssetsProcessor.java:166) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at io.quarkus.deployment.ExtensionLoader$2.execute(ExtensionLoader.java:915) at io.quarkus.builder.BuildContext.run(BuildContext.java:279) at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35) at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2011) at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1535) at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1426) at java.base/java.lang.Thread.run(Thread.java:834) at org.jboss.threads.JBossThread.run(JBossThread.java:479) 13:44:19,178 INFO [io.qua.dev.DevModeMain] Attempting to start hot replacement endpoint to recover from previous Quarkus startup failure 13:44:19,192 ERROR [io.qua.dev.DevModeMain] Failed to start quarkus: java.lang.IllegalArgumentException: workerPoolSize must be > 0 at io.vertx.core.VertxOptions.setWorkerPoolSize(VertxOptions.java:275) at io.quarkus.vertx.core.runtime.VertxCoreRecorder.convertToVertxOptions(VertxCoreRecorder.java:152) at io.quarkus.vertx.core.runtime.VertxCoreRecorder.initializeWeb(VertxCoreRecorder.java:105) at io.quarkus.vertx.http.runtime.VertxHttpRecorder.startServerAfterFailedStart(VertxHttpRecorder.java:119) at io.quarkus.vertx.http.deployment.devmode.VertxHotReplacementSetup.handleFailedInitialStart(VertxHotReplacementSetup.java:30) at io.quarkus.dev.RuntimeUpdatesProcessor.startupFailed(RuntimeUpdatesProcessor.java:452) at io.quarkus.dev.DevModeMain.doStart(DevModeMain.java:192) at io.quarkus.dev.DevModeMain.start(DevModeMain.java:96) at io.quarkus.dev.DevModeMain.main(DevModeMain.java:67)
- is related to
-
DROOLS-5140 Throw exception when unit declaration is not present
-
- Resolved
-