Reputation: 7313
I am relatively new to programming and java and am trying to learn how to create a user-defined package from the command-line. I get the following: Error: Could not find or load main class TestPhone
. I've reviewed posts on this type of error including the well-commented post here. The post lists 4 steps that the JVM goes through to run a java program:
main
method with signature static void main(String[])
.String[]
. Apparently, my JVM can't find my TestPhone.class for some reason I am yet to figure out. Here's my directory structure:
My classpath
is set as follows:
My classes contain simple codes from Mala Gupta to test accessibility of class variables:
package mobile;
class Phone {
static boolean softKeyboard = true;
}
package mobile;
class TestPhone {
public static void main (String[] args) {
Phone.softKeyboard = false;
Phone p1 = new Phone();
Phone p2 = new Phone();
System.out.println(p1.softKeyboard);
System.out.println(p2.softKeyboard);
p1.softKeyboard = true;
System.out.println(p1.softKeyboard);
System.out.println(p2.softKeyboard);
}
}
Any idea why it doesn't find my classes? Many thanks.
System specs: Java version 1.8.0 Javac 1.8.0 Win 7 on 32-bit OS
Upvotes: 2
Views: 709
Reputation: 34
You are in the myJavaProject folder in cmd.
Try to go to c:\myJavaProject\mobile then it should work because your class is in mobile not in myJavaProject folder
Upvotes: -1
Reputation: 279990
The java application launcher, java
, expects the fully qualified name of the class, mobile.TestPhone
. The ../mobile
directory need not be in the classpath.
Upvotes: 3