Android Studio 3 beta 2 ClassNotFound在kotlin单元测试中

我正在使用Android Studio 3.0 beta 2,将现有项目转换为gradle插件3.0.0-beta2

当我尝试运行在kotlin中编写的现有单元测试时,我得到'java.lang.NoClassDefFoundError:com / other / domain / CollectionItem'

测试本身非常简单:

import org.junit.Test import org.junit.Assert.* class CollectionViewModelTest { @Test fun getItemsWithManyItemsWillReturnCollectionItemViewModels() { val collectionItems = listOf(CollectionItem(42, "Item1", CollectionItemType.COLLECTION, ""), CollectionItem(43, "Item2", CollectionItemType.COLLECTION, ""), CollectionItem(44, "Item3", CollectionItemType.COLLECTION, "")) val collection = Collection(45, "Home", "Home collection", collectionItems, 42) val collectionViewModel = CollectionViewModel(collection) assertTrue(collectionViewModel.items.first().isFirst) assertFalse(collectionViewModel.items.first().isLast) assertFalse(collectionViewModel.items[1].isFirst) assertFalse(collectionViewModel.items[1].isLast) assertTrue(collectionViewModel.items.last().isLast) assertFalse(collectionViewModel.items.last().isFirst) } } 

它在我使用./gradlew从终端运行时起作用

任何想法,为什么会发生?

编辑:

这似乎只在测试需要来自其他库项目的类时才会发生。

在这种情况下, CollectionItem是同一项目中另一个库的一部分,它通过实现项目(':domain')包含在gradle文件中

编辑

也可能值得一提的是, domain模块是纯java的

编辑

找出问题是当库( domain )有用kotlin编写的类的时候,那些类只会在单元测试中抛出NoClassDefFoundError。