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@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@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@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@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@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@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev


_______________________________________________
rules-dev mailing list
rules-dev@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@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev