2017-03-09 11 views
3

は、私はそれで$ sbt new sbt/scala-seed.g8の結果を持っている「ハロー」と呼ばれるディレクトリを持っている...最初のステップがうまくいったスカラ/ SBTについての手掛かりを取得しようとしているとhttp://www.scala-sbt.org/0.13/docs/Hello.html"sbt hello、world"を実行するにはどうすればよいですか?

を歩きました。

第2ステップ「アプリを実行する」では、車輪が外れます。

$ sbt 
[info] Loading project definition from /Users/robert.kuhar/dev/Hello/project 
[info] Set current project to Hello (in build file:/Users/robert.kuhar/dev/Hello/) 
> run 
[info] Compiling 1 Scala source to /Users/robert.kuhar/dev/Hello/target/scala-2.12/classes... 
[info] 'compiler-interface' not yet compiled for Scala 2.12.1. Compiling... 
[info] Resolving org.scala-sbt#interface;0.13.13 ... 
[trace] Stack trace suppressed: run last compile:compileIncremental for the full output. 
[error] (compile:compileIncremental) java.lang.reflect.InvocationTargetException 
[error] Total time: 1 s, completed Mar 9, 2017 3:34:03 PM 
> 

run last compile:compileIncrementalの出力は、私はトラックオフ、雑草に、そして手がかりを求めてんだ...

... 
[info] Resolving org.scala-sbt#interface;0.13.13 ... 
java.lang.VerifyError: Uninitialized object exists on backward branch 209 
Exception Details: 
    Location: 
    scala/collection/immutable/HashMap$HashTrieMap.split()Lscala/collection/immutable/Seq; @249: goto 
    Reason: 
    Error exists in the bytecode 
... 

noobieの目にギリシャ語です。

このバージョンのものが重要かどうかはわかりませんが、私は1.8 JDKと0.13.13 SBTのOSX Sierraです。このマシンにはScala 2.12.1があります。

$ sbt sbtVersion 
[info] Loading project definition from /Users/robert.kuhar/dev/Hello/project 
[info] Set current project to Hello (in build file:/Users/robert.kuhar/dev/Hello/) 
[info] 0.13.13 
$ java -version 
java version "1.8.0_20" 
Java(TM) SE Runtime Environment (build 1.8.0_20-b26) 
Java HotSpot(TM) 64-Bit Server VM (build 25.20-b23, mixed mode) 
$ scala -version 
Scala code runner version 2.12.1 -- Copyright 2002-2016, LAMP/EPFL and Lightbend, Inc. 

「SBT Hello、World」を私の開発ボックスで実行するにはどうすればよいですか?

+0

あなたはどのディレクトリにsbtを実行していますか? 'sbt new sbt/scala-seed.g8'で作成したフォルダに移動して、' sbt run' – nmat

+0

@nmatと入力してください。テンプレートによって作成されたディレクトリHello。 –

+0

私のマシン上で動作します;)「バイトコードにはどこにエラーがありますか」はわかりませんが、私はあなたの環境にとってローカルなものだと確信しています。 – lutzh

答えて

2

sbt newプラグインなしでこれを行う方法があります。

ディレクトリHelloに次のdirsとファイルを作成します。

├── build.sbt 
└── src 
    └── main 
     └── scala 
      └── Hello.scala 

Hello/build.sbtHello.scala

object Hello extends App{ 
    println("Hello") 
} 

でこれを入れて、この行を追加します。

scalaVersion := "2.11.8 

実行]を、それrun

/tmp/Hello $ sbt                                                                                    [16:40:38] 
[info] Loading global plugins from /home/brian/.sbt/0.13/plugins 
[info] Set current project to hello (in build file:/tmp/Hello/) 
> run 
[info] Compiling 1 Scala source to /tmp/Hello/target/scala-2.11/classes... 
[info] Running Hello 
Hello 
... 

過去にg8/giterateテンプレートと「混在した」結果がありましたが、これは問題である場合としない場合があります。私はhttps://github.com/sbt/sbt-freshを使用しており、うまくいきました。 ScalaとSBTを完全に新しいものにして、上記のコードとビルドセットアップを開始する必要がある場合。

+1

それはうまくいったが、そうだ。これはScala/SBTのための良い開発ではありません。 「SBTで始める」というGoogleの検索結果の1つが機能しません。いずれにしても、感謝します。 –

関連する問題