Guys,

has anybody had any issues trying to run their drools unit tests from
eclipse with drools 2.5 beta 2. Everything seems to work well with 2.1 but I
get the following with 2.5 beta 2:

java.lang.NoClassDefFoundError:
org/eclipse/jdt/internal/compiler/env/INameEnvironment
at org.apache.commons.jci.compilers.JavaCompilerFactory.createCompiler(
JavaCompilerFactory.java:82)
at org.drools.semantics.java.JavaSemanticFunctionsCompiler.getInstance(
JavaSemanticFunctionsCompiler.java:27)
at org.drools.semantics.java.JavaFunctions.getSemanticFunctionsCompiler(
JavaFunctions.java:101)
at org.drools.smf.RuleSetCompiler.compile(RuleSetCompiler.java:166)
at org.drools.smf.RuleSetCompiler.<init>(RuleSetCompiler.java:67)
at org.drools.io.RuleSetLoader.addFromInputSource(RuleSetLoader.java:169)
at org.drools.io.RuleSetLoader.addFromUrl(RuleSetLoader.java:68)
at org.drools.io.RuleBaseLoader.loadFromUrl(RuleBaseLoader.java:529)
at org.drools.io.RuleBaseLoader.loadFromUrl(RuleBaseLoader.java:494)
at org.drools.io.RuleBaseLoader.loadFromUrl(RuleBaseLoader.java:479)


This seems to be because it's trying to pick up the Eclipse compiler instead
of the janino one which is on the classpath because of the following:

public class JavaSemanticFunctionsCompiler extends AbstractSemanticCompiler
    implements
    SemanticFunctionsCompiler
{
    private static SemanticFunctionsCompiler INSTANCE;

    private final String                     semanticType;

    public static SemanticFunctionsCompiler getInstance()
    {
        if ( JavaSemanticFunctionsCompiler.INSTANCE == null )
        {
            JavaSemanticFunctionsCompiler.INSTANCE = new
JavaSemanticFunctionsCompiler( "java",

JavaCompilerFactory.getInstance().createCompiler(
JavaCompilerFactory.ECLIPSE ) );
        }
        return JavaSemanticFunctionsCompiler.INSTANCE;
    }

INSTANCE seems to be always null when running from JUnit. Everything works
ok when I run the cactus tests against the deployed app running under JBoss
4.0.4

Do I have to configure something else when running straight JUnit tests?

Reply via email to