在Heroku本地目录中的插件的SBT解析器

时间:2016-01-15 07:25:15

标签: scala heroku sbt

我有一个内部SBT插件,它设置了我构建的许多常见方面。其中一个是我的设置添加我的Artifactory凭据和解析器。我通常在本地发布插件,以便我的构建可以解析它,然后从我的Artifactory存储库中提取剩余的依赖项。

为了部署到Heroku,我计划将已发布的工件从我的.ivy2 repo复制到项目的子文件夹中。但是,虽然我可以使用Resolver.file和Resolver.url在本地工作,但是一旦我推送到Heroku,我就无法使用它。我甚至尝试过它作为一种非托管依赖,但在Heroku中仍未解决。

有没有人知道在Heroku上达到此目的的魔法?

我试图在project / plugins.sbt中跟踪:

Resolver.url.("local-plugins", url(s"file///${baseDirectory.value}/plugins"))(Resolver.ivyStylePatterns)

Resolver.file("local-plugins", file("plugins")(Resolver.ivyStylePatterns)

unmanagedBase := baseDirectory.value / "lib"

2 个答案:

答案 0 :(得分:0)

我推荐两种不同的方法:

  • 使用sbt-heroku plugin而不是使用Git进行部署。您可以通过这种方式使用本地依赖项。
  • 将您的插件部署到BinTray。这很容易,免费,值得一试。

答案 1 :(得分:0)

我今天再次重访这一点,以下工作:

在plugins.sbt中:

resolvers += Resolver.file("local-plugins", file("local-plugins"))(Resolver.ivyStylePatterns)

我的项目还在工作文件夹中包含一个local-plugins /目录,用于保存已发布的工件。