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:
- Search for the compiled version of the class.
- Load the class.
- Check that the class has a
main
method with signaturestatic void main(String[])
. - Call that method passing it the command line arguments as a
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