2013-10-31 3 views
0

스몰 중형 SBT Scala (Akka 포함) 프로젝트가 있고 scalac의 출력물을보고 싶다면 어떻게해야합니까?SBT 스칼라 프로젝트 de-sugared

작은 함수 나 클래스 파일을 표시하기 위해 두어 개의 references을 찾았지만 예제에서는 외부 클래스 (예 : 가져 오기)를 사용하지 않습니다. ScalaTest의 한 기능이 당황하지 않는 것을보고 싶지만 단순한 scala -print myFile.scala이 작동하지 않는 많은 의존성이 있습니다.

이렇게하는 방법에 대한 생각은 대단히 감사하겠습니다.

SBT 0.13로

답변

2

, 당신은 클래스 경로에있는 모든 권리 종속 명령 줄에서 스칼라 컴파일러를 실행할 수있는 명령 줄 내보낼 수 있습니다,

> compile 
[info] Compiling 2 Scala sources to /Users/jason/code/scratch3/target/scala-2.10/classes... 
[success] Total time: 1 s, completed Oct 31, 2013 7:28:50 PM 
> export compile 
scalac -bootclasspath /Library/Java/JavaVirtualMachines/1.6.0_37-b06-434.jdk/Contents/Classes/jsfd.jar:/Library/Java/JavaVirtualMachines/1.6.0_37-b06-434.jdk/Contents/Classes/classes.jar:/System/Library/Frameworks/JavaVM.framework/Frameworks/JavaRuntimeSupport.framework/Resources/Java/JavaRuntimeSupport.jar:/Library/Java/JavaVirtualMachines/1.6.0_37-b06-434.jdk/Contents/Classes/ui.jar:/Library/Java/JavaVirtualMachines/1.6.0_37-b06-434.jdk/Contents/Classes/laf.jar:/Library/Java/JavaVirtualMachines/1.6.0_37-b06-434.jdk/Contents/Classes/sunrsasign.jar:/Library/Java/JavaVirtualMachines/1.6.0_37-b06-434.jdk/Contents/Classes/jsse.jar:/Library/Java/JavaVirtualMachines/1.6.0_37-b06-434.jdk/Contents/Classes/jce.jar:/Library/Java/JavaVirtualMachines/1.6.0_37-b06-434.jdk/Contents/Classes/charsets.jar:/Users/jason/.ivy2/cache/org.scala-lang/scala-library/jars/scala-library-2.10.3.jar -classpath /Users/jason/code/scratch3/target/scala-2.10/classes:/Users/jason/.ivy2/cache/org.scalacheck/scalacheck_2.10/jars/scalacheck_2.10-1.10.1.jar:/Users/jason/.ivy2/cache/org.scala-tools.testing/test-interface/jars/test-interface-0.5.jar:/Users/jason/.ivy2/cache/org.scala-lang/scala-actors/jars/scala-actors-2.10.1.jar /Users/jason/code/scratch3/src/main/scala/Exercise.scala /Users/jason/code/scratch3/src/main/scala/Test.scala 

당신은 그 걸릴 수를 파일을 내려 치다가 관심 있으신 분은 -print 또는 그와 비슷한 것을 추가하십시오. 내가 한때 새 명령을 SBT 내에서이 작업을 수행 할 수있는이 자동화

, compile-quick :

https://github.com/retronym/scratch/blob/master/20111022/project/CompileQuickPlugin.scala https://github.com/retronym/scratch/blob/master/20111022/sbt.log

그러나 현재 SBT 릴리스와 함께 작동하는 경우 내가 확인하지 않았습니다.

1

내 해킹은 일반적으로 컴파일 한 다음 jd-gui를 사용하여 디 컴파일하는 것입니다. 때로는 엉망이되지만 설탕의 99 %를 이해하는 데 도움이됩니다.

관련 문제