2013-12-12 52 views
2

我正在尝试使用sbt-scalabuff plugin,但sbt一直抱怨找不到该插件。如何使用sbt-scalabuff插件与sbt 0.13?

插件文档没有声明解析器url。该插件是否被弃用或者我的Scala版本不被支持?

详情:

com.github.sbt:sbt-scalabuff:0.2 (sbtVersion=0.13, scalaVersion=2.10) 

这里是我的plugins.sbt

libraryDependencies += "net.sandrogrzicic" %% "scalabuff-runtime" % "1.3.6" 

addSbtPlugin("com.github.sbt" %% "sbt-scalabuff" % "0.2") 

这里是堆栈跟踪的一部分:

sbt.ResolveException: unresolved dependency: com.github.sbt#sbt-scalabuff;0.2: not found 
    at sbt.IvyActions$.sbt$IvyActions$$resolve(IvyActions.scala:213) 
    at sbt.IvyActions$$anonfun$update$1.apply(IvyActions.scala:122) 
    at sbt.IvyActions$$anonfun$update$1.apply(IvyActions.scala:121) 
    at sbt.IvySbt$Module$$anonfun$withModule$1.apply(Ivy.scala:116) 
    at sbt.IvySbt$Module$$anonfun$withModule$1.apply(Ivy.scala:116) 
    at sbt.IvySbt$$anonfun$withIvy$1.apply(Ivy.scala:104) 
    at sbt.IvySbt.sbt$IvySbt$$action$1(Ivy.scala:51) 
    at sbt.IvySbt$$anon$3.call(Ivy.scala:60) 
    ... 
[error] (*:update) sbt.ResolveException: unresolved dependency: com.github.sbt#sbt-scalabuff;0.2: not found 

回答

5

The sbt-scalabuff plugin没有发表任何插件jar已知的存储库sbt可以用于您的配置 - sbtVersion=0.13scalaVersion=2.10。我也怀疑这个插件是否支持我的插件(当我编译插件的时候,我几次尝试使用这个版本失败了)。

看来你的唯一选择是降级sbt到0.12.4或迁移插件到0.13

由于插件被发布到Resolver.sbtPluginRepo("releases")库,即http://repo.scala-sbt.org/scalasbt/sbt-plugin-releaseshttp://dl.bintray.com/sbt/sbt-plugin-releases/com.github.sbt/sbt-scalabuff/scala_2.10/sbt_0.12/,你将不得不使用SBT的版本。

使用在project/sbt-scalabuff.sbt如下:

addSbtPlugin("com.github.sbt" %% "sbt-scalabuff" % "0.2") 

您应该然后指定SBT的版本project/build.properties如下:

sbt.version=0.12.4 

或者只是使用sbt-launch 0.12.4

在控制台中,您可以使用scalabuff任务或设置:scalabuff-version,scalabuff-mainscalabuff-args

> sbt-version 
[info] 0.12.4 
> about 
[info] This is sbt 0.12.4 
[info] The current project is {file:/Users/jacek/sandbox/sbt-scalabuff-test-project/}main 
[info] The current project is built against Scala 2.9.2 
[info] Available Plugins: org.sbtidea.SbtIdeaPlugin, com.timushev.sbt.updates.UpdatesPlugin, scalabuff.ScalaBuffPlugin 
[info] sbt, sbt plugins, and build definitions are using Scala 2.9.2 
> scalabuff-version 
[info] 1.1.1 
> help scalabuff 
Generate Scala sources from protocol buffers definitions 
> scalabuff-args 
[info] List() 
> scalabuff-main 
[info] net.sandrogrzicic.scalabuff.compiler.ScalaBuff 

查看GitHub存储库中的scalabuff.ScalaBuffPlugin对象。

我也不得不改变构建物体(如the Usage section描述)与插件项目设置为import sbt._

import sbt._ 
import scalabuff.ScalaBuffPlugin._ 

object build extends Build { 
    lazy val root = Project(
    "main", 
    file("."), 
    settings = Defaults.defaultSettings ++ scalabuffSettings 
).configs(ScalaBuff) 
} 
+0

真棒!指向回购网址的另一个+1。我无法找到这个。 – Aleyna

相关问题