11
votes

I installed intellij and it keeps giving me error:

Could not find or load main class sample.Main

I checked many answers for similar questions and non of them worked. The program I'm trying to run:

package com.company;

public class Main {

    public static void main(String[] args) {
        System.out.printf("hello");
    }
}

enter image description here

Run Configuration enter image description here

Settings enter image description here

enter image description here

enter image description here

"out" folder is not getting created. Full run command used by intellij after expanding "..."

"C:\Program Files\Java\jdk1.8.0_181\bin\java.exe" "-javaagent:E:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2018.2.1\lib\idea_rt.jar=51072:E:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2018.2.1\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.8.0_181\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\cldrdata.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\jfxrt.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\nashorn.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\sunpkcs11.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\zipfs.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\jce.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\jfxswt.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\resources.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\rt.jar" com.company.Main

4
Did the com.company file and import appear there on its own? I don't think that's supposed to be there when running IntelliJ on a fresh install.Howard P
Did you try rebuilding?shmosel
Check the output directory has write permissions, check build.log for errors (intellij-support.jetbrains.com/hc/articles/207241085), see also stackoverflow.com/a/42660624/104891 answer. What's the output path you are masking out on your screenshots?CrazyCoder
@HowardP I created sample command line application that comes with intellij.Anthony J.
@shmosel I tried rebuilding and it didn't fix the issue.Anthony J.

4 Answers

7
votes

Thanks to CrazyCoder, I could find the root of the problem. Intellij is using wrong iml file in "modules.xml" file. Change the iml value in modules.xml manually and rebuilding the project fixed the problem. enter image description here

Of course this is just a work around. I think I have problem my intellij as it always using wrong iml file for all new projects.

0
votes

I struggled to find an answer to the same issue, eventually, I hope that was the reason, I deleted the content of the "out" directory and re-run. It helped.

0
votes

I just faced error in my IntelliJ also, for me all the setting looks good even though it was not working. I removed main.iml file and right click and run program. Again it's created new main.iml and works fine.

0
votes

[June 2020 Answer] Works with all Intellij versions.

Select File menu Project settings. (or CMD + ; in mac)

Click Artifacts -> New Jar (+) -> Empty

( Now you will get option to create Manifest file) enter image description here

Then Manually add the libraries and META-INF path which should be inside resources directory.

Make sure to include Module Output Folder also inside jar.

enter image description here I created a video to help this out https://www.youtube.com/watch?v=wPGSas_f0ts