将scala代码拆分为模块,其中一个模块仅用于导入

将scala代码拆分为模块,其中一个模块仅用于导入,scala,import,module,Scala,Import,Module,我有一个主scala模块,它的主对象具有多个函数。为了运行代码,我导入了许多基本和必要的包 我已经将代码分成几个模块,每个模块都有一个对象,其中的一些函数取自原始主模块 我不知道如何处理进口。我想我可以为导入创建一个单独的模块,这是我尝试过的,但显然它不起作用 有没有一种方法可以跳过在每个模块中单独导入,而只使用一个模块进行所有必要的导入?有些语言允许重新导出导入,但Scala不是其中之一。您可以这样做: object Imports { type Type1 = some.package.

我有一个主scala模块,它的主对象具有多个函数。为了运行代码,我导入了许多基本和必要的包

我已经将代码分成几个模块,每个模块都有一个对象,其中的一些函数取自原始主模块

我不知道如何处理进口。我想我可以为导入创建一个单独的模块,这是我尝试过的,但显然它不起作用


有没有一种方法可以跳过在每个模块中单独导入,而只使用一个模块进行所有必要的导入?

有些语言允许重新导出导入,但Scala不是其中之一。您可以这样做:

object Imports {
  type Type1 = some.package.Type1
  // only if Type1 is a Scala type with a companion object
  val Type1 = some.package.Type1
  ...
  // you can also define methods here
}

// elsewhere
import Imports._

在大多数情况下,这是一个坏主意。它对Java类型的静态成员也没有帮助。

所说的“模块”是指“文件”还是其他什么?模块=文件(在同一目录中)。因此,如果您有一个包含许多函数的脚本,您将如何清理它?由于导入问题,我认为拆分为多个模块的方式不是这种方式。基本上,任何IDE都可以让它成为一个问题。2.即使不使用IDE,也可以从包中导入所有内容(
导入一些.package.\u
),从而大大减少了导入数量。