sonatype/m2eclipse-scala

Class not found in JUnit java tests for java-scala cycle dependency

Closed this issue · 1 comments

Hi,

In sample app "prj-scala-cycle-java" i've added JUnit Java test under src/test/java:

package sample;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;

import org.junit.Test;

import samples.JavaObj;
import samples.ScalaObj;
import samples.UseJavaObj;
import samples.UseScalaObj;

public class JavaTest {

    @Test
    public void testOK() {
        assertTrue(true);
    }

    @Test
    public void testJavaObj() throws Exception {
        assertEquals(33, new JavaObj().doStuff());
    }

    @Test
    public void testUseJavaObj() {
        assertEquals(66, new UseJavaObj().use());
    }

    @Test
    public void testScalaObj() {
        assertEquals(280, new ScalaObj().foo());
    }

    @Test
    public void testUseScalaObj() throws Exception {
        assertEquals(-280, new UseScalaObj().use());
    }

}

And it works great, both eclipse and maven.

Then i've added code to ScalaObj.scala:

package samples

class ScalaObj {
  def foo() = 280

  def xmlTest() = {
    val xml = <foo><bar/></foo>
    (xml \\ "foo").text
  }
}

and new test to JUnit Java tests:

@Test
public void testScalaXml() {
    assertNotNull(new ScalaObj().xmlTest());
}

Test crashes in eclipse. It works in maven, and even in eclipse after maven build. But after "project->clean" it fails again.

Well, it's working like a charm for maven dependency on scala in version 2.10.1 :-)