0

このコードをコンパイルしてみます

import java.awt.Color
import javax.swing.JButton
import javax.swing.JPanel;


object Main{
    var panel = new JPanel
    var btn= new JButton
    def main(args:Array[Int]):Unit={
      btn.setBounds(80,80,80,80)
      btn.setBackground(Color.BLUE);
      panel.add(btn);
  }  
}

クラスファイルを入力scalac Main.scalaすると正常に作成されましたが、scala Main の後に次のような出力がありました

java.lang.NoClassDefFoundError: midterm/Main
Caused by: java.lang.ClassNotFoundException: midterm.Main
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: midterm.Main.  Program will exit.
Exception in thread "main" Java Result: 1

どのように修正しますか?

4

1 に答える 1

2

これはパッケージの問題のようです。Main.scalaが というディレクトリにあることを確認しmidtermます。次に使用します。

scalac midterm/Main.scala

midtermサブディレクトリを含むディレクトリから。また、ファイルに次のpackage宣言が含まれていることを確認してください。

package midterm

また、mainメソッド エントリ ポイント メソッドには、String配列ではなく配列が必要Intです。

def main(args:Array[Int]):Unit={

する必要があります

def main(args:Array[String]):Unit={

これらの変更により、 で正常にコンパイルされScala 2.10.0ます。

于 2013-03-10T19:06:10.893 に答える