我可以在Scala中同时从多个包中导入吗?

Jea*_*let 17 import scala

在特定项目中我的Scala文件的开头,我经常有这样的行:

package com.mycompany
package subproject

import common._
import uiutils._
import databinding._
import modeling._
Run Code Online (Sandbox Code Playgroud)

有没有办法创建一个ProjectImports"preimports"所有这些导入的对象(或包对象),以便我可以简单地写

import ProjectImports._
Run Code Online (Sandbox Code Playgroud)

而不是整个列表,在我的每个其他项目文件中?

难道这涉及到的方式scala包进口的Predefscala.`package`

Che*_*tEx 8

如果您需要的所有导入都是某些特征的成员,则可以轻松完成.如果您有多个具有函数,内部类等的特征,则可以创建从所有特征继承的对象.所以他们所有的东西都可以简单地导入import MyObject._.以这种方式导入类变得有点棘手 - 您必须为每个类创建一个类型成员.

有关此技术的更多示例,请参阅scalaz项目中的Casbah Imports对象Scalaz对象.