1

sbtとsbteclipseを使ってscalaプロジェクトのディレクトリレイアウトを作成したいだけです。以下は私のsbtファイルです。

import com.typesafe.sbteclipse.plugin.EclipsePlugin.EclipseKeys

name := "BGS"

organization := "com.example"

version := "1.0.0"

scalaVersion := "2.9.2"

scalacOptions ++= Seq("-deprecation")

EclipseKeys.createSrc := EclipseCreateSrc.Default + EclipseCreateSrc.Resource

EclipseKeys.projectFlavor := EclipseProjectFlavor.Scala

scalaSource in Compile <<= (sourceDirectory in Compile)(_ / "scala")

scalaSource in Test <<= (sourceDirectory in Test)(_ / "scala")

libraryDependencies += "org.scalatest" %% "scalatest" % "1.8" % "test"

libraryDependencies += "junit" % "junit" % "4.10" % "test"

unmanagedBase <<= baseDirectory { base => base / "lib" }

unmanagedJars in Compile <<= baseDirectory map { base => (base ** "*.jar").classpath }

このsbtファイルでは、次の行を使用してScalaディレクトリを強制的に作成する必要がありました。

scalaSource in Compile <<= (sourceDirectory in Compile)(_ / "scala")

scalaSource in Test <<= (sourceDirectory in Test)(_ / "scala")

さらに、sbtコンソールから「eclipse」を実行した後、プロジェクトをEclipseにインポートしましたが、Scalaクラスを作成できませんでした。Eclipseプロジェクトアイコンには、Javaプロジェクトであることを示す「J」の文字が付いています:-?

sbtとsbteclipseがデフォルトでJavaになっているのはなぜですか?

私はsbtバージョン0.12(2012年11月現在の最新バージョン)、scala2.9.2を実行しています。

参考までに、私が目指しているのは、sbtを使用して、次のディレクトリ構造で作業プロジェクトを作成することです。

├── build.sbt
├── lib
│   ├── biojava3-core-3.0.4.jar
├── project
│   ├── plugins.sbt
│   ├── project
│   │   └── target
│   └── target
│       ├── config-classes
│       ├── scala-2.9.2
│       └── streams
├── src
│   ├── main
│   │   ├── java
│   │   ├── resources
│   │   └── scala
│   └── test
│       ├── java
│       ├── resources
│       └── scala
├── target
│   ├── scala-2.9.2
│   │   ├── cache
│   │   ├── classes
│   │   └── test-classes
│   └── streams
│       └── compile
└── test
4

2 に答える 2

1

これまでのところ望ましい答えが得られていないので、TypesafeStackにトレンドを取り入れています。手動でインストールしたscalaとsbtを削除し、TypesafeStackのすべてを使用しています。この方法でテストが終了したら、さらに更新します。

これが私が約束した最終的な更新です:

私はこのリンクの指示に従いました、そしてそれは完全に働きました:http: //typesafe.com/resources/typesafe-stack/downloading-installing.html

誰かがMacOSXをフォローしたい場合の詳細情報:

基本的に、私は最初にここでの指示に従ってmacportを自作に切り替えました:

http://bitboxer.de/2010/06/03/moving-from-macports-to-homebrew/

それから私はしました:

brew install scala sbt maven giter8

次に、コマンドラインからScalaプロジェクトを作成します。

g8 typesafehub/scala-sbt

最後に、ここでの指示に従ってsbteclipseを追加し、プロジェクトをeclipseに変換しました。

https://github.com/typesafehub/sbteclipse

すべてが期待どおりに機能します。

于 2012-12-02T22:49:49.957 に答える
0

なぜsbtにそれらのディレクターを作成させたいのですか?自分で作成してみませんか。これは1回限りのイベントです。

次の行は必要ありません

EclipseKeys.createSrc := EclipseCreateSrc.Default + EclipseCreateSrc.Resource

EclipseKeys.projectFlavor := EclipseProjectFlavor.Scala

scalaSource in Compile <<= (sourceDirectory in Compile)(_ / "scala")

scalaSource in Test <<= (sourceDirectory in Test)(_ / "scala")

私は通常mkdir -p src/main/scala、新しいプロジェクトを開始するたびにそれを行います。

于 2012-11-24T23:46:52.137 に答える