Jump to content
Sign in to follow this  
JustMike

Java and cmd "Could not find or load main class"

Recommended Posts

Hi, I'm a beginner in Java. I have the following problem: "Error: Could not find or load main class FirstClass"

 

I have done the following things in cmd:

h:cd h:My Namejavac FirstClass.javajava FirstClass

after the last command I get this error:"Error: Could not find or load main class FirstClass".

I have the Java SE Developer Kit 7u45 from here: http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

 

How can I solve this? What I'm missing?

Thanks in advance for your help!

Share this post


Link to post
Share on other sites

Did you compile successfully? You started with a FirstClass.java file which was actually a text file. Then you ran...

 javac FirstClass.java

Did this produce a file named FirstClass.class?

 

The file FirstClass.java is a text file and should contain something like...

class FirstClass {    public static void main(String[] args) {        System.out.println("Hello World!"); // Display the string.    }}

See...

 

http://docs.oracle.com/javase/tutorial/getStarted/cupojava/win32.html

 

I would also suggest that you download the Netbeans IDE.

Edited by davej

Share this post


Link to post
Share on other sites

Yes, the javac command seems to be working, but when I try java FirstClass it gives me that error. The file name is FirstClass.java.

The file contains the following code:

class FirstClass{	public static void main(String args[])	{/*		for (int i=4;i<=20;i++)			if ((prim(i)==true) &&(prim(i-2))==true)			System.out.println(i);			int  g = Integer.parseInt(args[0]);		if(div(g) == g){			System.out.println("Numarul este perfect");		}else if(div(g) > g){			System.out.println("Numarul este supralicitat");		}else{			System.out.println("Numarul este sublicitat");			}		//System.out.println(div(Integer.parseInt(args[0])));		//div(Integer.parseInt(args[0]));*/	desen(Integer.parseInt(args[0]),Integer.parseInt(args[1]));	}	static int fact(int n)	{		int rez=1;		for(int i=1;i<=n;i++)		rez=rez*i;		return rez;	}	static boolean prim (int n){		for (int i=2; i<=n/2; i++)			if (n%i ==0) return false;		return true; }	static int div(int nr){		int v=0;		for(int i=1;i<nr;i++){			if(nr%i==0){v=v+i;}			}		return v;		}	static void desen(int w, int h){		for(int j=1;j<=h;j++){					for(int i=1;i<=w;i++){						if(w != i){							System.out.print("*");						}						else if(w == i){							System.out.println("*");						}					}		}	}}

The code is working, I have written this on a school computer and it was working, but on my home computer I have this problem...

Share this post


Link to post
Share on other sites

See if the little "Hello world" class will run. Always start with a "Hello world" program when you are testing something.

Share this post


Link to post
Share on other sites

Still doesn't work...

The javac command works, but when I try the java command I have the same Problem: "Error: Could not find or load main class FirstClass"

Share this post


Link to post
Share on other sites

Are you using a windows pc or something else?

 

Are you using exact capitalization?

 

java FirstClass

Edited by davej

Share this post


Link to post
Share on other sites

I am using a pc with windows 7 (32 bit).

Yes, the class name it is the same with the file name and I use the exact capitalization.

This is a picture with my command prompt after I write javac and java commands:

2cfp8xi.jpg

Share this post


Link to post
Share on other sites

And the capitalization is exact inside the .java file? You downloaded dk-7u45-windows-i586 ?

 

What do you get when you enter java -version?

 

The java code you posted above does produce an error if you don't supply the two required integer arguments, but it is a different type of error.

Edited by davej

Share this post


Link to post
Share on other sites

Yes, the class name inside .java file is exactly the same.

The downloaded and installed file it is this one jdk-7u45-windows-i586

This is what I get if I enter java -version:

 

java version "1.7.0_45"

Java SE Runtime Environment (build_1.7.0_45-b18)

Java HotSpot Client VM (build 24.45-b08, mixed mode, sharing)

Share this post


Link to post
Share on other sites

Ok, so where did java get installed? You mention drive H: above. What if there is some really old java installed somewhere else like maybe on some other drive? Try again using the full path for javac and java

Share this post


Link to post
Share on other sites

I uninstalled java from Control Panel > Programs and Features and installed it again, but I still have the same problem.

I checked, and there isn't any other java version.

About the drives, I have the C: drive with the operating system (java is installed in Program Files folder) and I have the H: drive with my java files saved in a folder.

Edited by JustMike

Share this post


Link to post
Share on other sites

If you've checked your path and there is nothing strange there, and you've tried using the full path to the known good executables then I've run out of ideas. You would have to ask a real java guru on the Oracle forum. You could try installing the Netbeans IDE in the hope that it might detect and correct whatever is wrong.

 

It could be a problem with something like the classpath, which I don't really understand...

http://docs.oracle.com/javase/7/docs/technotes/tools/windows/classpath.html

Share this post


Link to post
Share on other sites

The path and the classpath are set, but still doesn't work. I have tried with NetBeans but the problem is still there....

Thanks for your help, I will continue to search for a solution and when I will find one I will post it here.

___________

Edit:

I found the error, in the enviromental variables (Stsrem Properties>Advanced tab) there was another path set (something about nvidia) in System variables windows, I just deleted that and now I can run the files after I compile.

Edited by JustMike

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...