当前位置:  开发笔记 > 编程语言 > 正文

SBT插件在非托管jar文件中

如何解决《SBT插件在非托管jar文件中》经验,为你挑选了1个好方法。

要求:SBT插件代码位于非托管jar中,例如lib/unmanaged-sbt-plugin-0.0.1.jar.我期待SBT会自动拾取jar文件,插件可以开箱即用,即:可以从SBT命令行访问任务,但事实并非如此.

jar文件中包含sbt/sbt.autoplugins文件,如果从远程仓库中将文件拖入本地文件并通过其导入,则该插件可以正常工作addSbtPlugin(...).请注意我不能这样做 - 需要lib/unmanaged-sbt-plugin-0.0.1.jar从本地/远程仓库加载而不是从本地/远程仓库加载.

将以下行放入其中build.sbt不会使插件工作(也没有错误):

unmanagedJars in Compile += file("lib/unmanaged-sbt-plugin-0.0.1.jar")

实施addSbtPlugin(...)简单(根据http://www.scala-sbt.org/0.12.2/docs/Getting-Started/Using-Plugins.html):

def addSbtPlugin(dependency: ModuleID): Setting[Seq[ModuleID]] =
  libraryDependencies <+= (sbtBinaryVersion in update, scalaBinaryVersion in update) 
  { (sbtV, scalaV) => sbtPluginExtra(dependency, sbtV, scalaV) }

我想知道上述信息是否可用于解决我的问题?

先感谢您!



1> 0__..:

因此,您可以为库依赖项(ModuleID)指定显式URL :

addSbtPlugin("org.my-org" % "unmanaged-sbt-plugin" % "0.0.1"
  from "file:///./lib/unmanaged-sbt-plugin-0.0.1.jar")

推荐阅读
手机用户2402851155
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有