2011-09-26 60 views
10

我只是跟着在Build Scala Android apps using Scala的步骤,当我跑sbt我得到了以下未解决的相关性错误的项目文件夹内:未解决的依赖于sbt-android-plugin 0.6.0-SNAPSHOT?

[info] Loading project definition from /Users/macarse/Documents/scalatest/project/plugins 
[info] Updating {file:/Users/macarse/Documents/scalatest/project/plugins/}default-dd299a... 
[warn] module not found: org.scala-tools.sbt#sbt-android-plugin_2.9.1;0.6.0-SNAPSHOT 
[warn] ==== typesafe-ivy-releases: tried 
[warn] http://repo.typesafe.com/typesafe/ivy-releases/org.scala-tools.sbt/sbt-android-plugin_2.9.1/0.6.0-SNAPSHOT/ivys/ivy.xml 
[warn] -- artifact org.scala-tools.sbt#sbt-android-plugin_2.9.1;0.6.0-SNAPSHOT!sbt-android-plugin_2.9.1.jar: 
[warn] http://repo.typesafe.com/typesafe/ivy-releases/org.scala-tools.sbt/sbt-android-plugin_2.9.1/0.6.0-SNAPSHOT/jars/sbt-android-plugin_2.9.1.jar 
[warn] ==== local: tried 
[warn] /Users/macarse/.ivy2/local/org.scala-tools.sbt/sbt-android-plugin_2.9.1/0.6.0-SNAPSHOT/ivys/ivy.xml 
[warn] -- artifact org.scala-tools.sbt#sbt-android-plugin_2.9.1;0.6.0-SNAPSHOT!sbt-android-plugin_2.9.1.jar: 
[warn] /Users/macarse/.ivy2/local/org.scala-tools.sbt/sbt-android-plugin_2.9.1/0.6.0-SNAPSHOT/jars/sbt-android-plugin_2.9.1.jar 
[warn] ==== public: tried 
[warn] http://repo1.maven.org/maven2/org/scala-tools/sbt/sbt-android-plugin_2.9.1/0.6.0-SNAPSHOT/sbt-android-plugin_2.9.1-0.6.0-SNAPSHOT.pom 
[warn] -- artifact org.scala-tools.sbt#sbt-android-plugin_2.9.1;0.6.0-SNAPSHOT!sbt-android-plugin_2.9.1.jar: 
[warn] http://repo1.maven.org/maven2/org/scala-tools/sbt/sbt-android-plugin_2.9.1/0.6.0-SNAPSHOT/sbt-android-plugin_2.9.1-0.6.0-SNAPSHOT.jar 
[warn] ==== Scala-Tools Maven2 Repository: tried 
[warn] http://scala-tools.org/repo-releases/org/scala-tools/sbt/sbt-android-plugin_2.9.1/0.6.0-SNAPSHOT/sbt-android-plugin_2.9.1-0.6.0-SNAPSHOT.pom 
[warn] -- artifact org.scala-tools.sbt#sbt-android-plugin_2.9.1;0.6.0-SNAPSHOT!sbt-android-plugin_2.9.1.jar: 
[warn] http://scala-tools.org/repo-releases/org/scala-tools/sbt/sbt-android-plugin_2.9.1/0.6.0-SNAPSHOT/sbt-android-plugin_2.9.1-0.6.0-SNAPSHOT.jar 
[warn] :::::::::::::::::::::::::::::::::::::::::::::: 
[warn] ::   UNRESOLVED DEPENDENCIES   :: 
[warn] :::::::::::::::::::::::::::::::::::::::::::::: 
[warn] :: org.scala-tools.sbt#sbt-android-plugin_2.9.1;0.6.0-SNAPSHOT: not found 
[warn] :::::::::::::::::::::::::::::::::::::::::::::: 
[error] {file:/Users/macarse/Documents/scalatest/project/plugins/}default-dd299a/*:update: sbt.ResolveException: unresolved dependency: org.scala-tools.sbt#sbt-android-plugin_2.9.1;0.6.0-SNAPSHOT: not found 
Project loading failed: (r)etry, (q)uit, (l)ast, or (i)gnore? 

我缺少什么?

回答

8

对于SBT 0.11.0:

  1. 遵照说明从@Debilski's answer到Android的插件发布到本地。
  2. rm -rvf project/plugins/
  3. 创建一个文件project/plugins.sbt,这个文件的内容是addSbtPlugin("org.scala-tools.sbt" % "sbt-android-plugin" % "0.6.0-SNAPSHOT")
  4. 现在,你应该能够运行sbt该项目
  5. android:package-debug下编译/包创建的Hello World程序G8。
  6. android:install-device在Android设备上安装APK。
+0

酷,这个工作。你能解释发生了什么吗? – Macarse

+0

@Macarse在事实,我不知道发生了什么究竟,我不是很熟悉SBT 0.1倍。我只是在位置,从发布本地的不同在步骤1中发布为Android的plugin.jar项目搜索,以便我在SBT公文寻找另一种方式包括在项目中的插件错误信息中发现,和发现这一个作品。这就是所有,只是线索和错误,不知道为什么。 –

+0

感谢您的回答。 – Macarse

3

sbt-android-plugin尚未在版本0.6.0-SNAPSHOT中公开。一个快速解决方案是将其安装在本地。

git clone https://github.com/jberkel/android-plugin.git 
cd android-plugin 
sbt update 
sbt publish-local 

当然,这只是只要可以作为GitHub的存储库的主分支点0.6.0-SNAPSHOT版本。 (如果没有了,那么我会怀疑0.6.0已经出版。)

+0

我这样做,但我仍然得到同样的问题。在android-plugin里面,我写'version',并且得到'[info] 0.6.0-SNAPSHOT'。 – Macarse

+0

也没有为我工作。在成功完成下列建议步骤之后,sbt android:package-debug仍会给出[error] {file:/ C:/ Workspaces/my-android-project/project/plugins /} default-949520/*:update:sbt.ResolveException:unresolved依赖性:org.scala-tools.sbt#SBT-Android的plugin_2.9.1; 0.6.0-快照:未发现 –

+3

插件被添加在SBT 0.11已changhed的方式。现在使用'g8 jberkel/android-app -b sbt-0_11'来初始化你的项目。 –