2016-07-23 46 views
0

我修改了scala編譯器的源代碼並構建它。現在我想測試這個編譯器。但是,許多現有的scala項目使用sbt作爲構建工具。所以我想知道是否可以用我自己構建的scala編譯器替換sbt使用的官方scala編譯器。是否可以指定sbt使用的scala編譯器?

回答

0

http://www.scala-sbt.org/1.0/docs/Configuring-Scala.html#Using+Scala+from+a+local+directory

從源代碼構建斯卡拉的結果是Scala的主目錄<base>/build/pack/包含包含Scala庫,編譯器和其它罐子子目錄lib/。通過下載和提取Scala發行版獲得相同的目錄佈局。通過設置scalaHome,可以將此類Scala主目錄用作jar的源代碼。例如,

scalaHome := Some(file("/home/user/scala-2.10/")) 

如果你想publish編譯器,使用@ ipoteka的答案。

+0

謝謝。但我發現我應該設置scalaHome:=一些(文件(「/ home/user/scala-2.10/build/pack」))。 :) –

0

根據docs這是直截了當:

managedScalaInstance := false 

libraryDependencies += "yourPackage" % "yourScalaCompiler" % version 

不要忘了publish-local你編譯器首先。

+0

根據文檔,這個片段不起作用(依賴關係是錯誤的配置,沒有scala庫依賴,''yourScalaCompiler'''必須''scala-compiler'''')。改用那裏給出的那個。 –

相關問題