Search code examples
javawindows-7javac

Cannot find output .class files using javac?


I type javac helloworld.java at cmd in win 7.

C:\Users\User\Downloads\java_tut>javac HelloWorld.java

C:\Users\User\Downloads\java_tut>dir *.class

 Directory of C:\Users\User\Downloads\java_tut

03/28/2014  05:42 PM               429 YourClassName.class

C:\Users\User\Downloads\java_tut>

I searched the following directories for helloworld.class: java, jre, jdk, java_tut, jre/bin, jdk/bin, and my entire harddrive.

I did need to manually add the /jdk/bin directory to my path. I wonder if that matters?


Solution

  • If HelloWorld.java compiled without any errors, then the file HelloWorld.class should definitely be in the java_tut directory.

    EDIT (based on your comments and edits):

    Check if your Java source file HelloWorld.java looks as follows:

    public class HelloWorld {
        public static void main(String[] args) {
            System.out.println("Hellow, World!");
        } 
    }
    

    The class must have the same name as the Java source file or you get following compiler error message:

    [515]% javac HelloWorld.java 
    HelloWorld.java:1: error: class YourClassName is public, should be declared in a file named YourClassName.java
    public class YourClassName {
       ^
    1 error