【发布时间】:2013-10-11 03:21:47
【问题描述】:
在 scala 中,通常的做法是堆栈包语句 to allow shorter imports,但是当我使用堆栈包将文件加载到 scala ide 中并尝试使用从同一组织开始的导入时,出现的编译器错误成为演示文稿编译器。代码在 IDE 之外的 sbt 中编译得很好。
示例代码sn-p如下:
package com.coltfred
package util
package time
import com.github.nscala_time.time.Imports._
在导入时我收到错误object github is not a member of package com.coltfred.util.com。
如果我将导入移到一行,错误就会消失,但我们在代码库中经常使用这种做法,因此将它们全部更改为单行包语句会很痛苦。
为什么会发生这种情况,我可以做些什么来解决它?
编辑:
我使用 eclipse-sbt 插件为此生成了 eclipse 项目文件。目录结构就是它应该的样子,所有的依赖都在类路径中。
编辑 2:
原来在 util 包的测试树中有一个文件(应该在同一个包中),但顶部有重复的包语句。我没有检查测试树,因为它不应该影响主树的编译,但显然我错了。
【问题讨论】: