(Ceki Gülcüによる)logback
は素晴らしい作品とあまりにも行番号を維持することを私が発見しました!
(そして、それはlog4j
の代替として機能します!恐ろしい)はScalaを使い始めるのに苦労し、誰のために
import ch.qos.logback._
import org.slf4j._
object Main {
def logger = LoggerFactory.getLogger("Main")
var thingy = {
x:Int =>
logger.info("x=" + x)
x + 1
}
def main(args: Array[String]) {
logger.info("Hello.")
logger.info("Hello again!")
val myInts : List[Int] = List(-25,1,5,20)
val myInts2 : List[Int] = myInts.filter { x:Int => x > 0 }
logger.info("my ints2:" + myInts2)
val myInts3 = myInts2.map(p => p * 2)
logger.info("my ints3:" + myInts3)
logger.info(thingy(1) + "")
}
}
、これは私が基本骨格を得るために何をしたかである:
1)Download sbt-launcher.jar
:そして私は「
sbt-launch-0.7.5.RC0.jar
」
2)nano /opt/bin/sbt
中SBTランチャーへのショートカットとしてbashスクリプトを作成して使用/opt/
のようにどこかにそれを置きます
#!/bin/bash
java -jar /opt/sbt-launch-0.7.5.RC0.jar "[email protected]"
$ sudo chmod ug+x ./sbt
それはあまりにもあなたのパスにあることを確認します(それが実行可能に)。
3)のsbtプロジェクトを作成および構成:
import sbt._
class sc01(info: ProjectInfo) extends DefaultProject(info)
{
// dependencies
val logback_core = "ch.qos.logback" % "logback-core" % "0.9.24" % "compile" //LGPL 2.1
val logback_classic = "ch.qos.logback" % "logback-classic" % "0.9.24" % "compile" //LGPL 2.1
val log4j_over_slf4j = "org.slf4j" % "log4j-over-slf4j" % "1.6.1"
// if you are going to have any unmanaged (manually-added) jars
// def baseDirectories = "lib"
// def extraJars = descendents(baseDirectories, "*.jar")
// override def unmanagedClasspath = super.unmanagedClasspath +++ extraJars
// tasks - easy to define
lazy val hi = task { println("Hello World"); None }
// classpath
//override def mainScalaSourcePath = "src"
}
4)主に上からものを貼り付けます:
$ nano ./src/main/scala/Main.scala
$ mkdir ./sc01
$ cd ./sc01
$ sbt
$ mkdir ./project/build</pre>
$ nano ./project/build/Project.scala</pre>
はこのそこにを置くを) 忘れそうだった!
> update
> compile
> run
・ホープ、この:
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<!-- encoders are assigned the type
ch.qos.logback.classic.encoder.PatternLayoutEncoder by default -->
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} %line --- %msg%n</pattern>
</encoder>
</appender>
<root level="debug">
<appender-ref ref="STDOUT" />
</root>
</configuration>
6)$ sbt
今、あなたはあなたのシェルでsbt
コンソールにする必要があります(行番号を取得するために必須です)/src/main/resources/logback.xml
でこれを置きます助けてください。
興味深いフィードバックです。私はそれを試してみましょう。 +1(あなた自身の答えを公式のものとして選択できることを忘れないでください) – VonC
ここでの説明は、sbtの文書よりもはるかに優れています。早くこの答えを見つけて欲しいです。 – srparish
@srparishそれがあなたを助けてくれてうれしい!私は、ブログ記事/スタックオーバーフロー/メーリングリストからの比較的短いプログラミングキャリアで非常に助けになりました。私が提供できるものを返すことができてうれしいです。 – jpswain