我确实有我自己的插件,我用'publish- local‘来拉本地。可以使用以前版本的sbt在其他项目中解析该插件,但它不再工作。
build.sbt of the plugin
sbtPlugin := true
name := "sumosim-webstart"
organization := "net.entelijan"
version := "1.3"
scalaVersion := "2.10.0"
crossPaths := false
publishTo := Some("entelijan-repo" at "http://entelijan.net/artifactory/repositories/libs-ivy-local/")
credentials += Credentials("Artifactory Realm", "entelijan.net", "xxxx", "xxxx")
//scalacOptions ++= Seq("-deprecation", "-unchecked")这是sbt publish-local产生的输出
[exec] [info] Packaging /home/wolfi/prj/sumosim/sumosim-pom/sumosim-webstart/target/sbt-0.12/sumosim-webstart-1.3-javadoc.jar ...
[exec] [info] Done packaging.
[exec] [info] published sumosim-webstart to /home/wolfi/.ivy2/local/net.entelijan/sumosim-webstart/scala_2.10/sbt_0.12/1.3/poms/sumosim-webstart.pom
[exec] [info] published sumosim-webstart to /home/wolfi/.ivy2/local/net.entelijan/sumosim-webstart/scala_2.10/sbt_0.12/1.3/jars/sumosim-webstart.jar
[exec] [info] published sumosim-webstart to /home/wolfi/.ivy2/local/net.entelijan/sumosim-webstart/scala_2.10/sbt_0.12/1.3/srcs/sumosim-webstart-sources.jar
[exec] [info] published sumosim-webstart to /home/wolfi/.ivy2/local/net.entelijan/sumosim-webstart/scala_2.10/sbt_0.12/1.3/docs/sumosim-webstart-javadoc.jar
[exec] [info] published ivy to /home/wolfi/.ivy2/local/net.entelijan/sumosim-webstart/scala_2.10/sbt_0.12/1.3/ivys/ivy.xml这是我想要使用插件的plugin.sbt:
resolvers ++= Seq(
"typesave" at "http://repo.typesafe.com/typesafe/releases",
"sbt-idea-repo" at "http://mpeltonen.github.com/maven/",
"entelijan" at "http://entelijan.net/artifactory/repo/"
)
addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse-plugin" % "2.0.0")
addSbtPlugin("net.entelijan" % "sumosim-webstart" % "1.3")最后,我得到的错误消息
[exec] [error] (*:update) sbt.ResolveException: unresolved dependency: net.entelijan#sumosim-webstart;1.3: not found有没有人知道为什么这个不起作用?
发布于 2013-03-14 18:44:04
据我所知,用于构建插件的Scala版本必须与用于构建sbt本身的Scala版本相匹配。Sbt 0.12是使用Scala 2.9构建的,sbt 0.13是使用Scala 2.10构建的。
您的插件项目使用Scala 2.10来构建插件。您的客户端项目可能也使用Scala 2.10,但是您使用sbt 0.12来构建它。因此,Sbt试图找到Scala 2.9的插件,但失败了,因为您发布了2.10版本的插件。
发布于 2014-01-01 07:49:02
由于项目的Scala版本与发布时的插件不匹配,因此您可能希望在build.sbt中使用其他版本的addSbtPlugin
addSbtPlugin("net.entelijan" % "sumosim-webstart" % "1.3", "0.12", "2.10")第二个参数是sbtVersion,最后一个参数是scalaVersion。
需要注意的是,一般而言,作为已发布的工件与版本不匹配的插件可能会与其他不受支持的sbt和Scala版本中断。
https://stackoverflow.com/questions/15403983
复制相似问题