2011-10-10 35 views
9

Tôi đang học Scala và tôi đang mắc kẹt tại kịch bản hello world.Scala: Hello World Script không hoạt động

hello.scala của tôi là:

Console.println("Hello World") 

Tôi đang chạy kịch bản như thế này:

scala hello.scala 

tôi nhận được một ngoại lệ kỳ lạ:

java.net.UnknownHostException: salil: salil: Name or service not known 
    at java.net.InetAddress.getLocalHost(InetAddress.java:1438) 
    at scala.tools.nsc.io.Socket$.localhost(Socket.scala:38) 
    at scala.tools.nsc.CompileSocket.getsock$1(CompileSocket.scala:169) 
    at scala.tools.nsc.CompileSocket.getOrCreateSocket(CompileSocket.scala:184) 
    at scala.tools.nsc.ScriptRunner.compileWithDaemon(ScriptRunner.scala:80) 
    at scala.tools.nsc.ScriptRunner.compile$1(ScriptRunner.scala:123) 
    at scala.tools.nsc.ScriptRunner$$anonfun$withCompiledScript$1.apply$mcZ$sp(ScriptRunner.scala:157) 
    at scala.tools.nsc.ScriptRunner$$anonfun$withCompiledScript$1.apply(ScriptRunner.scala:131) 
    at scala.tools.nsc.ScriptRunner$$anonfun$withCompiledScript$1.apply(ScriptRunner.scala:131) 
    at scala.tools.nsc.util.package$.waitingForThreads(package.scala:26) 
    at scala.tools.nsc.ScriptRunner.withCompiledScript(ScriptRunner.scala:130) 
    at scala.tools.nsc.ScriptRunner.runScript(ScriptRunner.scala:188) 
    at scala.tools.nsc.ScriptRunner.runScriptAndCatch(ScriptRunner.scala:201) 
    at scala.tools.nsc.MainGenericRunner.runTarget$1(MainGenericRunner.scala 

SCALA_HOME của tôi là/opt /scala-2.9.1.final
và Đường dẫn của tôi có $ SCALA_HOME/thùng trong đó.
JAVA_HOME của tôi là: /usr/java/jdk1.7.0

Đây có phải là vấn đề với cài đặt của tôi hay do một số vấn đề với thư viện Scala và JDK1.7?

+0

Ứng dụng có hoạt động với phiên bản Scala/JDK khác không? – Jus12

+0

Bạn đang sử dụng nền tảng nào? – Mark

+0

Tôi đang sử dụng Fedora 15. – Salil

Trả lời

21

Có vẻ như tên máy chủ của bạn không giải quyết để sửa địa chỉ IP, do đó scala không thể kết nối với dịch vụ trình biên dịch. Vui lòng kiểm tra/etc/file host của bạn, nó cần phải có một mức kỷ lục như sau:

127.0.0.1 salil 

Sau khi thiết lập bản đồ hostname/IP của bạn, bạn có thể sử dụng ping salil lệnh để xác nhận rằng bạn thiết lập là đúng.

+0

Đây là một trong số đó giúp cắt xén trên OSX (và có vẻ khá rõ ràng rằng * * là * OSX trong trường hợp này, với giá trị là JAVA_HOME) –

+0

@Brian hsu, cảm ơn rất nhiều. Tôi sẽ thử nó sớm. Dựa trên upvotes câu trả lời của bạn có, tôi chắc chắn nó sẽ làm việc :-) – Salil

+6

'scala -nocompdaemon' là một workaround: nó không bắt đầu một quá trình nền để biên dịch. – retronym