我是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");
   }
}

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


当前回答

我遇到了这个问题,我尝试了我能想到的所有方法,在这个网站上。

从远程分支提取后,没有提取任何Java类。在项目层次结构中,所有类的名字都是红色的j,而不是蓝色的c。

最后,我尝试遵循本教程和几个步骤,尝试了一些没有描述的东西,并修复了问题: https://www.jetbrains.com/help/idea/creating-and-managing-modules.html

以下是我所做的:

进入文件|项目结构,或按Crtl+Shift+Alt+S 在Project Settings部分下选择Modules。 在Sources选项卡中单击“Mark as:”行上的Sources。 单击Apply按钮。

因为某种原因,我所有的课都是蓝C。

对IntelliJ和/或IDE有更好理解的人可能能够解释这种现象,但我所知道的是,现在它可以看到所有的类,更重要的是主类,并运行。

其他回答

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

在intelliJ中创建项目后,尝试运行以下命令:

mvn package

当类在默认文件夹中,即类没有声明包时,我就遇到过这样的问题。

所以我猜使用包语句(例如。将org.me.mypackage;)打包到类顶部应该可以修复它。

对我来说,解决方案是在项目设置下修复输出目录。在此之前,我仅使用“target”作为Project编译器输出。相反,我将其更新为完整路径,例如D:\dev\sigplusjava2_68\target

您可能指定了一个错误的包,并且包的层次结构也不正确。看下面

在这种情况下,ide会突出显示错误的路径。