5

我在一个安全的环境中工作,不允许开发人员从 GitHub 或任何其他外部存储库进行 git-clone。

我能够从 GitHub 下载 g8 模板 (play-scala-seed) 作为 zip 文件,并将其解压缩到本地文件夹。我可以使用该本地目录而不是 git repo 吗?

我的第一次尝试失败了:

> dir .\play-scala-seed
 Volume in drive C is OSDisk
 Volume Serial Number is A074-A016

 Directory of C:\workspace\play-scala-seed

03/22/2018  11:03 AM    <DIR>          .
03/22/2018  11:03 AM    <DIR>          ..
03/22/2018  11:01 AM    <DIR>          project
03/22/2018  10:57 AM    <DIR>          src
03/22/2018  11:03 AM    <DIR>          target
03/22/2018  10:57 AM                70 .gitignore
03/22/2018  10:57 AM               509 .travis.yml
03/22/2018  10:57 AM               453 build.sbt
03/22/2018  10:57 AM               439 LICENSE
03/22/2018  10:57 AM             1,166 README.md
               5 File(s)          2,637 bytes
               5 Dir(s)  220,172,980,224 bytes free

即使我确定模板存在并且位于名为“play-scala-seed”的目录中,但 SBT 新命令不接受它:

> sbt new .\play-scala-seed
Template not found for: .\play-scala-seed

那么如何让 sbt new 使用本地目录作为 g8 模板呢?

我正在运行 Windows(如果这很重要!)

4

1 回答 1

8

当您直接使用 giter8 时,您只需要使用file://前缀引用您的本地模板:

g8 file://play-scala-seed

正如@volia17 所提到的,您可以在 giter8 文档中找到它:在本地测试模板

但是当你使用 时sbt new,你需要你的模板名称(文件夹)以 . 结尾.g8。sbt 可以接受不同类型的模板,这样它就知道这是一个 giter8 模板。因此,您可以将模板文件夹重命名为play-scala-seed.g8

sbt new file://play-scala-seed.g8

PS 直接使用 giter8 要快得多,因为sbt new启动需要时间(它每次都会加载全局 sbt 插件)。

于 2018-03-22T14:09:51.857 回答