2017-10-18 2 views
0

最近私の関数プログラミングコースの一環としてScalaをインストールしましたが、問題が発生しました:IntelliJ IDEA 2017.2.1(Java version 9、build 9 + 181 )は私のスカラコードを実行しません。Error:メインクラスを見つけられないかMain Scalaを読み込めません

Error: Could not find or load main class Main

このコードは、一例です。

object Main { 
    def length[A](list:List[A]):Int = { 
    if (list == Nil) 0 
    else 1 + length(list.tail) 
    } 

    def main(args: Array[String]): Unit = { 
    length(List[Int](1, 4, 5, 12, -1)) 
    } 
} 

これは本当に簡単ですが、IntelliJはそれを実行することを拒否しています。 Windows CMDはscalaコマンドにも反応しません。

'scala' is not recognized as an internal or external command, operable program or batch file.

私はコンピュータにインストールしていますが、 IntelliJの内部でScala Consoleを呼び出すと、すべて正常に動作し、期待どおりにコンパイルされます。私はIntelliJの中でJDK 1.8に切り替えようとしましたが、結果は出ませんでした。

何が問題なのですか?

+0

IntelliJにscalaプラグインがインストールされていますか? scalaコマンドを実行できない場合は、scalaコンパイラがPATH変数に設定されていないようです。 – Ren

+0

はい、intellijプラグインがインストールされていることは間違いありません。 'scalaコンパイラがPATH変数に設定されていません'ということを指定できますか? –

+0

https://en.m.wikipedia.org/wiki/PATH_(variable) - 基本的には、オペレーティングシステムが実行するプログラムを探す場所のリストです。 CMDに 'scala'と入力すると、scalaがその場所にあるかどうかを調べます。そのため、あなたがインストールした場所をスカラにして、それをそのリストに追加する必要があります – Ren

答えて

0

小さな緑色の矢印を使用してメインオブジェクトの内部からプログラムを実行していますか?

どのようにしてプログラムを作成しましたか? buildプロジェクトのSBT設定ファイルが、お使いのコンピュータにインストールされているものとは異なるScalaバージョンである可能性があります。

It's really simple, yet IntelliJ refuses to run it. Windows CMD doesn't even react to a scala command, resulting into

'scala' is not recognized as an internal or external command, operable program or batch file. 

これは、端末のクラスパスにScalaが追加されていないことを意味します。それを行う方法を調べて、それがあなたのIntelliJの問題も解決しないかどうかを見てください。

関連する問題