2010-11-01 6 views
3

je suis nouveau pour scala. Et essayant d'exécuter l'application de balançoire. J'utilise scala 2.8 J'ai compilé le programme avec succès, mais .. lors de l'exécution est montrant l'erreur comme un tel fichier .. peut-il 1 s'il vous plaît aidez-moi?Comment exécuter l'application scala swing?

Je fournis le code que j'essaie d'exécuter.

Gui.scala 

import swing._ 

object Gui extends SimpleSwingApplication 

{ 
    def top=new MainFrame { 
     title="swing" 
     val b1=new Button{ 
      text = "ok" 
     } 
    } 
} 

scalac Gui.scala 

il compile avec succès et créer le fichier de classe mais lorsque je tente

scala Gui 

il répond simplement

Aucun fichier

+1

Pourriez-vous coller la trace de la pile? –

+0

L'exemple ci-dessus s'exécute avec Scala tous les soirs. Êtes-vous sûr que la compilation a réussi? Essayez de supprimer la ligne vide entre 'object' et' {'. – axel22

+0

Après l'avoir compilé, ne devriez-vous pas l'exécuter avec la JVM au lieu du compilateur Scala? –

Répondre

1

Ce n'est pas une coupure directe & coller à partir du code Scala, car la ligne vide entre object Gui et { provoque une erreur de compilation.

Maintenant, si vous corrigez cette erreur et compilez cela avec Scala 2.8, vous devriez obtenir ces classes dans le répertoire local:

  • $$ anon 1 Gui $ $$ anon 2.class $
  • $
  • Gui $ anon $ 1.class
  • $ de
  • Gui
  • Gui.class

Si vous ne pas, soit la compilation ne fonctionne pas, ou il y a quelque chose d'autre missi ng Par exemple, si vous avez déclaré package X en haut (et l'avez supprimé de l'exemple), alors Gui ne sera pas dans le répertoire local, mais dans un sous-répertoire X, et vous devrez l'appeler en tapant scala X.Gui.

Une autre possibilité est que vous ayez une variable d'environnement Java pointant le répertoire de sortie vers un autre emplacement.

+0

hey daniel ..... merci beaucoup .je l'ai eu. – survi

+0

le prob était dû aux variables d'environnement java – survi

2

Configuration:

D:\src\scala_ex\ex1>dir 
Volume in drive D is Data 
Volume Serial Number is 5C88-8D6C 

Directory of D:\src\scala_ex\ex1 

01.12.2010 09:25 <DIR>   . 
01.12.2010 09:25 <DIR>   .. 
01.12.2010 09:24    173 gui.scala 
       1 File(s)   173 bytes 
       2 Dir(s) 24 575 205 376 bytes free 

D:\src\scala_ex\ex1>more gui.scala 
import swing._ 

object Gui extends SimpleSwingApplication { 
    def top = new MainFrame { 
    title = "swing" 
    val b1 = new Button{ 
     text = "ok" 
    } 
    } 
} 

D:\src\scala_ex\ex1>scalac -version 
Scala compiler version 2.8.1.final -- Copyright 2002-2010, LAMP/EPFL 

Compile:

D:\src\scala_ex\ex1>scalac gui.scala 

D:\src\scala_ex\ex1>dir 
Volume in drive D is Data 
Volume Serial Number is 5C88-8D6C 

Directory of D:\src\scala_ex\ex1 

01.12.2010 09:26 <DIR>   . 
01.12.2010 09:26 <DIR>   .. 
01.12.2010 09:26    485 Gui$$anon$1$$anon$2.class 
01.12.2010 09:26    557 Gui$$anon$1.class 
01.12.2010 09:26    558 Gui$.class 
01.12.2010 09:26    1 467 Gui.class 
01.12.2010 09:24    173 gui.scala 
       5 File(s)   3 240 bytes 
       2 Dir(s) 24 575 201 280 bytes free 

Execute:

D:\src\scala_ex\ex1>scala -cp . Gui 

Et les applications commence.

Questions connexes