path and Claapath

what is path and classpath in java

what is PATH and CLASSPATH in Java?

  • PATH and CLASSPATH are two most important environment variable of Java environment which is used to find JDK binaries used to compile and run Java in windows and Linux and class files which are compile Java byte codes.
  • From our personal experience we just say that PATH and CLASSPATH are two most problematic thing for beginners in Java programming language due to two reasons; first because in most of Java courses nobody tell details of What is PATH and CLASSPATH, What does PATH and CLASSPATH do, What is meaning of setting PATH and CLASSPATH, What happens if we do not set them, Difference between PATH vs CLASSPATH in Java or simply How Classpath works in Java.

  • These basic question which answers most of details about PATH and CLASSPATH in Java are mostly not answered until Java programmer itself acquire these knowledge, Things may been changed now days but important of PATH and CLASSPATH is still high.
  • Most common cause of dreaded error likejava.lang.NoClassDefFoundError and java.lang.ClassNotFoundException are incorrect or misconfigured CLASSPATH in Java.

Difference between PATH and CLASSPATH in Java:

installed path

installed path

Here are some of the common difference between PATH vs CLASSPATH in Java :

1)Main difference between PATH and CLASSPATH is that  PATH is an environment variable which is used to locate JDK binaries like “java” or “javac” command used to run java program and compile java source file. On the other hand CLASSPATH environment variable is used by System or Application ClassLoader to locate and load compile Java bytecodes stored in .class file.

2) In order to set PATH in Java you need to include JDK_HOME/bin directory in PATH environment variable while in order to set CLASSPATH in Java you need to include all those directory where you have put either your .class file or JAR file which is required by your Java application.

3) Another significant difference between PATH and CLASSPATH is that PATH can not be overridden by any Java settings but CLASSPATH can be overridden by providing command line option -classpath or -cp to both “java” and “javac” commands or by using Class-Path attribute in Manifest file inside JAR archive.

4) PATH environment variable is used by operating system to find any binary or command typed in shell, this is true for both Windows and Linux environment while CLASSPATH is only used by Java ClassLoaders to load class files.

These were some notable difference between PATH vs CLASSPATH in Java and they are worth remembering to debug and troubleshoot Java related issues.

How to set the PATH and CLASSPATH you can see here…


Hey Guys ask us what ever doubts u have regarding our Stuffs... We r ready to help u anytime :)

Leave a Reply



  1. Chary

    What is the necessity to set the java class path in our system environment?

    Please help me with the quick answer

    • Hi chary,
      Here is Your answer,The class path is the path that the Java runtime environment searches for classes and other resource files.The CLASSPATH tells the Java Virtual Machine and other Java applications and tools where to find the class libraries. The class libraries that the CLASSPATH points to may be the JDK classes (contained in the file in the lib folder) and/or any classes that you want to use.

Next ArticlePreferences in Android