首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我得到“不是有效的密钥:gen”,用一个干净的sbt 0.13+安装如何修复它?

我得到“不是有效的密钥:gen”,用一个干净的sbt 0.13+安装如何修复它?
EN

Stack Overflow用户
提问于 2013-10-05 10:16:22
回答 1查看 6.7K关注 0票数 6

我想让gen-idea开始工作。我就是这样安装sbtidea插件的:

http://www.scala-sbt.org/release/docs/Getting-Started/Setup.html

我正在按照手册安装说明:

代码语言:javascript
复制
$ mkdir -p ~/bin
$ cd ~/bin
$ wget http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/sbt-launch/0.13.0/sbt-launch.jar
$ vi sbt

sbt文件中,我放置了以下内容:

代码语言:javascript
复制
SBT_OPTS="-Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=256M"
java $SBT_OPTS -jar `dirname $0`/sbt-launch.jar "$@"

然后,在保存之后:

代码语言:javascript
复制
$ chmod u+x ~/bin/sbt

./sbt

$ ./sbt
Getting org.scala-sbt sbt 0.13.0 ...
:: retrieving :: org.scala-sbt#boot-app
    confs: [default]

.
.
.

$ ./sbt --version
sbt launcher version 0.13.0

然后,我按照以下指示:

https://github.com/mpeltonen/sbt-idea

代码语言:javascript
复制
$ vi ~/.sbt/plugins/build.sbt

我输入以下内容:

代码语言:javascript
复制
resolvers += "Sonatype snapshots" at "http://oss.sonatype.org/content/repositories/snapshots/"

addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "1.6.0-SNAPSHOT")

$ cd ~/tmp
$ ~/bin/sbt
~/tmp$ ~/bin/sbt
[warn] The global sbt directory is now versioned and is located at /home/me/.sbt/0.13.
[warn]   You are seeing this warning because there is global configuration in /home/me/.sbt but not in /home/me/.sbt/0.13.
[warn]   The global sbt directory may be changed via the sbt.global.base system property.
[info] Set current project to tmp (in build file:/home/me/tmp/)


> gen-idea
[error] Not a valid command: gen-idea
[error] Not a valid project ID: gen-idea
[error] Expected ':' (if selecting a configuration)
[error] Not a valid key: gen-idea
[error] gen-idea
[error]         ^

如何纠正“非有效密钥:gen-idea”的问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-05 10:22:52

您使用的是较新版本的sbt,这一点非常清楚(您在输出中得到了这一点):

代码语言:javascript
复制
[warn] The global sbt directory is now versioned and is located at /home/me/.sbt/0.13.
[warn]   You are seeing this warning because there is global configuration in /home/me/.sbt but not in /home/me/.sbt/0.13.
[warn]   The global sbt directory may be changed via the sbt.global.base system property.
[info] Set current project to tmp (in build file:/home/me/tmp/)

解决方案是将sbt插件信息放在另一个位置(或设置sbt.global.base属性,如上文所述):

代码语言:javascript
复制
cat ~/.sbt/0.13/plugins/build.sbt 
addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "1.5.1")
票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19196587

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档