我有一个这种格式的scala sbt项目 -
ProjectDirectory/
ProjectDirectory/build.sbt
ProjectDirectory/project
ProjectDirectory/src
ProjectDirectory/src/main/scala/MyMainFile.scala
ProjectDirectory/src/main/scala/MySupportingFile.scala
ProjectDirectory/target
目前,要使用MySupportingFile.scala
内MyMainFile.scala
中定义的(实用程序)功能,我将导入并使用它们。
但是,随着我们的代码的增长,我们已经转移到多个项目,其中很少可能需要MySupportingFile.scala
内的函数。
如何移动MySupportingFile.scala
此项目的外部并将其设为library project
并在需要它的所有新项目中使用它。
答案 0 :(得分:1)
您需要以与创建项目相同的方式为MySupportingFile.scala
创建新项目。即
SupportProject/
SupportProject/build.sbt
SupportProject/src/main/scala/MySupportingFile.scala
编译项目时将自动创建 target
子文件夹。然后构建此项目,使用publishLocal
发布它(取决于SBT版本,它可以是publish-local
),并像往常一样在ProjectDirectory/build.sbt
中添加对此项目的依赖:
libraryDependencies += supportProjectGroupId %% supportProjectName % supportProjectVersion