[rules-dev] Protobuf error

Michael Anstis michael.anstis at gmail.com
Wed Jun 5 14:42:15 EDT 2013


Thanks for the explanation Edson.

I'll add where it is missing (drools-wb, kie-wb and possibly kie-drools-wb).


On 5 June 2013 19:28, Edson Tirelli <ed.tirelli at gmail.com> wrote:

>
>    Michael, I added the dependency to all modules that I had cloned in my
> local machine, but I did not have the wb cloned at that time. If you don't
> mind adding, it would be great.
>
>    All modules that use the Kie api will need the dependency when
> precompiling a kmodule, i.e., when generating or using a kjar. If the code
> only uses source files without generating a kjar, then they will not need
> the dependency.
>
>    This is necessary because now Drools will, at the time it generates the
> kjar, precompile all rules and serialized them inside the kjar, so that at
> the moment the kjar is used, it does not need to invoke the JDT compiler.
>
>    Edson
>
>
> On Wed, Jun 5, 2013 at 1:53 PM, Michael Anstis <michael.anstis at gmail.com>wrote:
>
>> Thanks... do I assume from your email that we need to add that dependency?
>>
>> What is the criteria for need to follow to know if we need to include
>> that dependency on other (existing or new) modules?
>>
>> With kind regards,
>>
>> Mike
>>
>>
>> On 5 June 2013 18:50, Edson Tirelli <ed.tirelli at gmail.com> wrote:
>>
>>>
>>>   Manstis, sorry I missed the dependency on that module:
>>>
>>>     <dependency>
>>>
>>>
>>>
>>>       <groupId>com.google.protobuf</groupId>
>>>       <artifactId>protobuf-java</artifactId>
>>>
>>>
>>>       <optional>true</optional>
>>>
>>>
>>>     </dependency>
>>>
>>>
>>>
>>> Sorry,
>>>
>>>
>>>  Edson
>>>
>>>
>>>
>>> On Wed, Jun 5, 2013 at 2:58 AM, Michael Anstis <michael.anstis at gmail.com
>>> > wrote:
>>>
>>>> Hi,
>>>>
>>>> Drools Workbench has started to get failing tests due to this:-
>>>>
>>>> java.lang.NoClassDefFoundError: com/google/protobuf/Message
>>>> 	at org.drools.compiler.kie.builder.impl.KieServicesImpl.newKieBuilder(KieServicesImpl.java:87)
>>>> 	at org.kie.workbench.common.services.builder.Builder.build(Builder.java:116)
>>>> 	at org.kie.workbench.common.services.builder.BuildServiceImplTest.testBuilderSimpleKProject(BuildServiceImplTest.java:69)
>>>> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>> 	at java.lang.reflect.Method.invoke(Method.java:597)
>>>> 	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
>>>> 	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>>>> 	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
>>>> 	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
>>>> 	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
>>>> 	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
>>>> 	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
>>>> 	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
>>>> 	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
>>>> 	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
>>>> 	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
>>>> 	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
>>>> 	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
>>>> 	at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
>>>> 	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
>>>> 	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
>>>> 	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
>>>> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>> 	at java.lang.reflect.Method.invoke(Method.java:597)
>>>> 	at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
>>>> 	at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
>>>> 	at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
>>>> 	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
>>>> 	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)
>>>>
>>>> Has something changed upstream? Do we need additional dependencies?
>>>>
>>>> I remember seeing on IRC yesterday that marshalling had broken(?) is
>>>> this related.
>>>>
>>>> With kind regards,
>>>>
>>>> Mike
>>>>
>>>> _______________________________________________
>>>> rules-dev mailing list
>>>> rules-dev at lists.jboss.org
>>>> https://lists.jboss.org/mailman/listinfo/rules-dev
>>>>
>>>
>>>
>>>
>>> --
>>>   Edson Tirelli
>>>   JBoss Drools Core Development
>>>   JBoss by Red Hat @ www.jboss.com
>>>
>>> _______________________________________________
>>> rules-dev mailing list
>>> rules-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/rules-dev
>>>
>>
>>
>> _______________________________________________
>> rules-dev mailing list
>> rules-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/rules-dev
>>
>
>
>
> --
>   Edson Tirelli
>   JBoss Drools Core Development
>   JBoss by Red Hat @ www.jboss.com
>
> _______________________________________________
> rules-dev mailing list
> rules-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-dev/attachments/20130605/895d324b/attachment.html 


More information about the rules-dev mailing list