2011-11-13 17 views
11

Scala 2.9.1'i kullanarak Scala betiğini Windows 7 64-Bit altında düzenlemek ve çalıştırmak için Sublime Text 2'yi kullanmaya çalışıyorum. aşağıdaki gibiSublimeText 2 & scala.sublime-build Dosya

C:\work\Scala>scala ScalaGreetings.scala 
Greetings from Scala... 
C:\work\Scala> 

scala.sublime-yapı içeriği şunlardır: komut satırından aşağıdaki ne girdiğinizde olur izlemeye kalkıştığı, aşağıdaki scala.submline-build dosyası oluşturduk

{ 
    "cmd": ["C:\\scala-2.9.1.final\\bin\\scala.bat $File"] 
} 

Bir Sublime Metni sekmesinde yüklenen basit Scala betiği ile, F7 tuşuna basıldığında, Scala yorumlayıcısının yüklenmesi ve çalıştırılmasıyla sonuçlanır, ancak betik beklendiği gibi yürütülmez. Yapı penceresinde şu görünür: Bu düşünceyle

Welcome to Scala version 2.9.1.final (Java HotSpot(TM) 64-Bit Server VM, Java 1.7.0_01). 
Type in expressions to have them evaluated. 
Type :help for more information. 

scala> 

, aşağıdaki sorularla yardımına ve geribildirim takdir ediyorum;

1.) Ben Sublime Text 2 içinden bir Scala senaryoyu yürütmek ve komut başarıyla yorumlanır sonra Yapı pencere içinde çıkış ekranı olabilir mi?

2. ) Söz yukarıda eksik ve/veya benim scala.sublime metin dosyası ile yanlış ne, evet cevabını varsayarsak? Özellikle Scala için Yüce Proje dosyalarının şekilde Scala ile Yüce Metin 2 kullanımı hakkında bakmak gerekir herhangi bir ek kaynaklar

3. ) var mı?

cevap

4

yerine bu kullanmayı deneyin:

{ 
    "cmd": ["C:\\scala-2.9.1.final\\bin\\scala.bat", "$File"] 
} 
+0

Bu '$ File'' bir' $ file' olmak istiyor - OSX’de s3 için en az – danodonovan

4

{ 
    "cmd": ["C:\\scala-2.9.1.final\\bin\\scala.bat","$file"] 
} 

ben onunla çözebilir ayarı bu yapı deneyin. Değişken isimleri harf duyarlı olduğundan, $file alt durumda olması gerektiğini

1
{ 
    "cmd": ["C:\\scala-2.9.1.final\\bin\\scala.bat", "$file"], 
    "selector": "source.scala" 
} 

Not.

selector ayarı, Sublime'in yapı sistemini otomatik olarak seçmesine yardımcı olur.

Daha fazla bilgi için Sublime Text'in reference on build systems adresini kontrol edin.

1

Bazı problemler bina .scala dosyaları vardı ve ne ben fark ben shell parametre true olarak ayarlanmış olması gerektiğini, bu nedenle burada benim build_systems

"build_systems": 
[ 
    { 
     "name": "Compile", 
     "cmd": ["scalac", "Main.scala"], 
     "shell": true, 
     "working_dir": "<path to project folder>" 
    }, 
    { 
     "name": "Run", 
     "cmd": ["scala", "Main.scala"], 
     "shell": true, 
     "working_dir": "<path to project folder>" 
    } 

] 

Hep yanı working_dir parametreyi ayarlayın ama sanırım bu önemli değil.

Yani sorularınızı yanıtlamak için: komut çalıştırıldıktan sonra

  1. Evet, evetler sen yüce çıktı görebilirsiniz.

  2. Yukarıdaki yapılandırmamın size yardımcı olacağını umuyorum.

  3. SublimeREPL plugin'u denemenizi tavsiye ederim.

+0

Oh bu soru çok eskiydi, farketmedi ... –

1

Bu Mac OS X için bir giriştir, ancak Windows ve özellikle Linux için büyük bir fark olduğunu düşünmüyorum.

Scala'da iki seçeneğiniz vardır.

Benim durumumda scala klasör içinde
{ 
    "cmd": ["/usr/local/scala/bin/scala", "$file"], 
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", 
    "selector": "source.scala" 
} 

, ben indirdiğiniz, /usr/local/ yerleştirilir:

İlk seçenek Scala tercüman scala kullanıyor.


İkinci seçenek kaynağınızı hazırlayacak. Bu biraz daha zor. Tabii

{ 
    "cmd": ["build_scala.sh", "$file"], 
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", 
    "selector": "source.scala" 
} 

Eğer e build_scala.sh bash komut dosyası eklemek gerekir. g. /usr/bin/ yılında:

#!/bin/bash   
# compiles all java files within directory and runs first argument 
for file in *.scala 
do 
echo "Compiling $file" 
/usr/local/scala/bin/scalac $file 
done 
echo "Running $1" 
/usr/local/scala/bin/scala $1 

Testi pencereler için which build_scala.sh

0

yazarak terminalde komut aşağıdaki Scala.sublime-build dosyasını ayarlayın sizin çevresel değişken scala yolunu ekleyin:

{ 
"cmd": ["scala.bat", "$file"], 
"selector": "source.scala" 
} 
İlgili konular