我是Java初学者,正在尝试使用IntelliJ运行我的代码,我刚刚将它安装为JDK 1.7的IDE。下面这段代码甚至不能编译,并不断给我错误:

Error: Could not find or load main class libTest

Code

import java.lang.Integer;
import java.lang.String;
import java.lang.System;
import java.util.*;

class book {

    private String name = "trial";
    private int bookCode=1;
    private int issued=0;

     public void Issue(){
         if(issued==0) {
             issued=1;
             System.out.println("You have succesfully issued the book");
         }
         else {
             System.out.println("The book is already issued. Please contact the librarian for further details");
         }
    }

    public int checkCode() {
        return bookCode;
    }

    String readName() {
        return name;
    }

    public void setName(String newName){
        name=newName;
    }

    public void setBookCode(int newCode){
        bookCode=newCode;
    }
}

class library {
    private ArrayList books=new ArrayList();

    public void getList(){
        for(int bk:books){
            String bName=books(bk).readName();
            System.out.println((bk+1)+")  "+bName);
        }
    }
}

public class libTest{
    public static void main(String[] args){
        library newLib= new library();
        System.out.println("code working");
   }
}

有任何改变,我必须在编译器设置??或者是代码。


当前回答

尝试检查您的项目名称和完整目录名称,看看是否包含任何“非英语”单词(如亚洲单词),有时这可能是错误的。重命名项目名称或项目路径包含这样的单词并重新打开它可能有效。

其他回答

我在使用Scala/SBT时得到了这个错误。IntelliJ无法找到主类,尽管一切都设置正确。 我的解决方案是:删除<用户>/。sbt/<version>/plugins/目标文件夹,然后重启IntelliJ。

在我的情况下,它有助于删除线条build.gradle

编译组:com.microsoft。Sqlserver ',名称:'mssql-jdbc',版本:'8.2.0.jre11'

我不知道为什么会发生这种情况,但是在添加指定的库之后,编译的jar停止工作

在尝试了几乎每一个建议在这一步,我仍然不走运。在两台不同的机器上试过。请教一位有经验的同事。

最后:我的问题的解决方案,可能是问题的原因:

在我的mac电脑上,其中一个文件夹名称包含一个正斜杠,就是这样

(我们在共享驱动器上使用了(深度)嵌套的文件夹结构;我的同事在Windows上工作,对路径中的正斜杠没有问题)

注意:虽然我想在这个线程上提供我的答案,但我从stackoverflow得到了一个“警告”,那里已经有超过30个答案。但他,对我毫无用处。因为这是一个可以追溯到2012年的线索,在2023年仍然活跃,有很多答案(以及同一个问题的原因)。我决定在这里也加入我的50美分。希望它能帮助和节省一些人的时间!!

遵循以下步骤

去跑步 点击编辑配置 点击左上角的绿色+符号 选择您正在工作的类型,例如“应用程序” 现在输入要运行的类的名称,而不是未命名的类 在写Main class的地方做同样的事情,就在它的下面。

好啊!…你的代码将运行:)

modules.xml有错误的内容,我不知道我的IDEA有什么问题。