49

私はこの簡単なプログラムを作りました:

package main.java;

public class start {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}

そして、このエラーが発生しました。何が起こっているのかわかりません。

"C:\Program Files\Java\jdk1.7.0_21\bin\java" -Didea.launcher.port=7532 "-Didea.launcher.bin.path=C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 12.1.4\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.7.0_21\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\jce.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\jfxrt.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\resources.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\rt.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.7.0_21\jre\lib\ext\zipfs.jar;C:\Users\Tim\IdeaProjects\Rust\out\production\Rust;C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 12.1.4\lib\idea_rt.jar" com.intellij.rt.execution.application.AppMain java.start
Exception in thread "main" java.lang.ClassNotFoundException: java.start
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:188)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:113)

Process finished with exit code 1

誰が何が悪いのか知っていますか?

4

13 に答える 13

51

おそらくプロジェクト構造はsrc/main/java/start.java でしたが、IntelliJ に追加したときにsrcをソース フォルダーとして設定したため、IntelliJ はmain.javaをパッケージとして配置しました。

Project Setting ( Ctrl+ Shift+ Alt+ S) → Modules → Sources タブで、src/main/javaSource Folderとして 設定します。次に、単純なプログラムでパッケージを好きなものに変更します (例: my.test )。その後、IntelliJが+でパッケージのクイックフィックスに沿ってエラーを報告した場合、助けになるはずですAltEnter

于 2013-06-25T18:11:38.787 に答える
15

私はこの問題を抱えていて、これらの解決策のいずれでも解決できませんでした。ただし、問題は、「open」を使用して、いくつかのJavaファイルを含むディレクトリからプロジェクトを作成していたことだと思います。代わりに、ルートと同じディレクトリで「新しいプロジェクトを作成」する必要がありました。

「新しいプロジェクトを作成する」ときは、「.idea」ディレクトリと「.iml」ファイルを必ず削除してください。そうしないと、指定されたディレクトリにプロジェクトが既に存在するというエラーが表示されます。

于 2016-09-24T20:12:50.810 に答える
1

私にとって、IntelliJ-Idea 2016 での問題は、 [パス] タブで、[モジュール コンパイル出力パスを使用する]ではなく、 [プロジェクト コンパイル出力パスを継承Project_structure/modulesする] をチェックする必要があることでした。

于 2016-12-13T13:47:16.777 に答える
1

将来のために:「コース名」/Tehtävät/Projectのようなフォルダ名にUnicode文字があり、問題は「ä」にありました。「a」に変更すると、プログラムが動作し始めました。

于 2013-11-10T22:35:36.703 に答える
-3

あなたのパッケージはmain.javaです。引数を渡しcom.intellij.rt.execution.application.AppMain java.startます。例外は、それが見つからないことを示していますjava.start。そして、これは正しいです。

コンソールのみを使用してコンパイルしてみてください。最初は IDE から離れて、IDE がどのように機能するかではなく、コンパイラを理解することに時間を費やしてください。

于 2013-06-25T14:51:07.630 に答える