2012-11-24 81 views
1

我只是想用sbt和sbteclipse爲我的scala項目創建一個目錄佈局。以下是我的sbt文件。sbteclipse默認不創建Scala項目?

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文件,我不得不用folling到線,迫使創造斯卡拉目錄:

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

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

此外,從SBT控制檯運行「月蝕」後,我導入項目到Eclipse ,但我無法創建Scala課程。 Eclipse項目圖標附有「J」字母表示它是Java項目: - ?

爲什麼sbt和sbteclipse默認爲Java?

我正在SBT版本0.12(最新版本爲2012 11月爲止),斯卡拉2.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 

回答

1

因爲到目前爲止我還沒有得到任何理想的答案,所以我趨向於Typesafe Stack。我刪除了手動安裝的scala和sbt,並且使用了Typesafe Stack中的所有內容。當我用這種方式完成測試時,我會更新更多。

這裏是因爲我答應最後更新:

我跟着指令在這個環節上它完美地工作: http://typesafe.com/resources/typesafe-stack/downloading-installing.html

萬一有人

的詳細信息要遵循的Mac OSX:

基本上,我首先將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 

一切都按我的預期工作。

0

爲什麼你想要創建這些導演?爲什麼不自己創造它們呢?這是一次性事件。

你不應該需要任何以下行

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的,每當我開始一個新項目。

+0

如果沒有這些行,「src/main/scala」和「src/test/scala」將不會在我的機器(Mac OSX)中創建。我想這樣做來了解更多關於sbt的知識,並最終通過一個sbt配置來完成更高級的任務。谷歌搜索表明,以前的版本讓用戶通過問題和答案創建項目結構。在0.12版本中情況並非如此。它似乎自動做更多的事情,但沒有提供讓用戶開始的第一個基本步驟:-( – biocyberman

+0

我不明白你自己創建這些目錄有什麼難的,一旦創建它們就不會消失。 –

+0

1. Let's說我正在測試sbt功能,我很想看看sbt配置文件是如何工作的。 – biocyberman

相關問題