Java ClassPath
Java ClassPath
Java ClassPath
What is PATH and CLASSPATH variables?
Java ClassPath
(index.shtml) (index.shtml) (index.shtml)
Question: What is the meaning of PATH and CLASSPATH ? How it is set in environment variable?.
Java is an OOP language. In java programming language for compiling the program we use the compiler that converts the source code into the byte code after that, that byte code is
interpreted by JVM that converts the bytecode into the machine independent code. In java how the Java compiler and the JVM use the class search path to locate classes when
they are referenced by other Java code. Searching class path is important for all Java developers.Many development tools have their own ways of manipulating the class path,
which vary from product to product.For doing this we will use only simple command-line tools to carry out the compile operations. No difference, between the way that the Java
compiler searches for classes, and the way that the JVM does it at run time. The compiler has the ability to compile classes from source code, where the JVM does not. We will use
the compiler, but similar issues apply at run time.
Chatbox
Live help is offline...
https://www.roseindia.net/java/java-classpath.shtml 1/17
12/10/2017 Java ClassPath
The difference is that Windows uses the colon (:) character as part of a filename, so it can't be used as a filename separator. Naturally the directory separator character is different
as well: forward slash (/) for Unix and backslash (\) for Windows.
( I ). For running a simple program we need to set the java path on command prompt(for temporary )& in Environment variable using PATH variable & CLASSPATH variable :
PATH variable
In JDK the PATH variable contains directories where binary files (e.g. EXE files in Windows) will be looked for.We set the PATH variables like this i.e path C:\Java\jdk1.6.0_03\bin
(file:///C:/Java/jdk1.6.0_03/lib)
C:\>set path=%path;C:\Java\jdk1.6.0_03\bin%
When you open a command prompt and type "javac", you're supposed to have the "bin" directory of your sdk into the PATH, otherwise you'll get an infamous "Command not found"
error message.
CLASSPATH
In JDK the CLASSPATH contains directories (or JAR files), from where your java compiler/runtime will look for .class files (and some others). For example, "java Hello.class" will not
work unless you set the directory (or JAR file) Hello.class is in, into your CLASSPATH.
i.e.classpath C:\Java\jdk1.6.0_03\lib (file:///C:/Java/jdk1.6.0_03/lib)
C:\>set classpath=%classpath;C:\Java\jdk1.6.0_03\lib%
Java compiler and run-time can search for classes not only in separate files, but also in `JAR' archives. A JAR file can maintain its own directory structure, and Java follows exactly
the same rules as for searching in ordinary directories. Specifically, `directory name = package name'. Because a JAR is itself a directory, to include a JAR file in the class search
path, the path must reference the JAR itself, not the directory that contains the JAR. This is a very common error. Suppose I have a JAR jarclasses.jar in directory /jarclasses. The
Java compiler look for classes in this jar, we need to specify:
javac -classpath /jarclasses/jarclasses.jar ...
https://www.roseindia.net/java/java-classpath.shtml 2/17
12/10/2017 Java ClassPath
In java programming language we use the following packages such as java.io.*; java. util.*;These packages are just a set of classes, you will want to store them in one place,
separate from the directory where you are developing your program. Sometimes these libraries have a set of files stored in a single jar file ( with a .jar extension). From where the
Java compiler and run programs must be able to find any of these. This is done for command line use of Java and for some editors and IDEs by setting an environment variable
called CLASSPATH. For Windows, the CLASSPATH environment variable should look like this :
c:\MyJavaLib;c:\MyJavaLib\myutils.jar;c:\MyJavaLib\blackboxclasses.jar (file:///c:/MyJavaLib;c:/MyJavaLib/myutils.jar;c:/MyJavaLib/blackboxclasses.jar);.
At the end " . " includes the current directory in the search for classes.
Suppose we have a directory MyJavaLib on the C-drive that contains some utility classes or the directories that correspond to some packages. This is the part before the first
semi-colon.
Second part indicates that we have some classes stored in a file myutils.jar
Finally, after the last semi-colon we have the period( . ), indicating that the current directory is on the CLASSPATH. If some things are stored in directories that are subdirectories, the
complete path, starting with "c:\" should be in the CLASSPATH.
(2) For setting CLASSPATH & PATH variable in environment variable by using the following steps:
Chatbox
Live help is offline...
https://www.roseindia.net/java/java-classpath.shtml 3/17
12/10/2017 Java ClassPath
Chatbox
Live help is offline...
https://www.roseindia.net/java/java-classpath.shtml 4/17
12/10/2017 Java ClassPath
Chatbox
Live help is offline...
https://www.roseindia.net/java/java-classpath.shtml 5/17
12/10/2017 Java ClassPath
in ( variable value) paste the path till bin directory i.e.------- c:\java\jdk1.6.0_03\bin click on ok
Chatbox
Live help is offline...
https://www.roseindia.net/java/java-classpath.shtml 6/17
12/10/2017 Java ClassPath
Chatbox
Live help is offline...
https://www.roseindia.net/java/java-classpath.shtml 7/17
12/10/2017 Java ClassPath
in ( variable value) paste the path till lib directory i.e.------- c:\java\jdk1.6.0_03\lib click on ok
Chatbox
Live help is offline...
https://www.roseindia.net/java/java-classpath.shtml 8/17
12/10/2017 Java ClassPath
Chatbox
Live help is offline...
https://www.roseindia.net/java/java-classpath.shtml 9/17
12/10/2017 Java ClassPath
Java class path is set for including the various files during program execution & compilation.After setting class search path on the javac command line, we set `system' class path.
This class path will be used by both the Java compiler and the JVM . In both Unix and Windows systems, this is done by setting an environment variable. For example, in Linux with
the bash shell:
CLASSPATH=/jarclasses/jarclasses.jar;export CLASSPATH
for Windows:
set CLASSPATH=c:\jarclasses\jarclasses.jar
We use this procedure for setting short-term changes to the system CLASSPATH, but if you want these changes to be persistent you will need to arrange this yourself.For different -
2 system this path is different . On a Linux system, we put the commands in the file .bashrc in my home directory. On Windows 2000/NT there is a `Control Panel' page for this.
Setting the system CLASSPATH is a useful procedure if you have JARs full of classes that you use all the time.
Advertisements
We have 1000s of tutorials on our website. Search Tutorials tutorials on our website. Chatbox
Live help is offline...
https://www.roseindia.net/java/java-classpath.shtml 10/17
12/10/2017 Java ClassPath
https://www.roseindia.net/java/java-classpath.shtml 11/17
12/10/2017 Java ClassPath
sted on: February 16, 2005 If you enjoyed this post then why not add us on Google+? Add us to your Circles (https://plus.google.com/+roseindia/posts)
Advertisements
Related Tutorials
Why You Should Installing JDK 9 How to convert How to add two What is Applet in
Learn Java in on Windows 10 binary to decimal numbers in Java with
2018? (/java/java9/install in Java? Java? Example?
(/java/why-you- jdk-9-on- (/java/java- (/java/java- (/java/example/jav
should learn windows conversion/how conversion/how is applet in java
Like 4 Share
Tweet (http://twitter.com/share)
Your Email :
Subject (*):
Chatbox
Live help is offline...
https://www.roseindia.net/java/java-classpath.shtml 12/17
12/10/2017 Java ClassPath
SUBMIT
COMMENTS:17
prabhat ranjan
December 25, 2011
difficulty in setting of path of java.
Hi I have window7 operating system.and i have installed jdk-7u2-windows-x64.exe for java program. But i have a problem to set path of java. and also how to run java
program.
vinayaka D J
January 9, 2012
unable to execute jar command
i am trying to execute jar command but its showing command not found what to do
Chatbox
Live help is offline...
https://www.roseindia.net/java/java-classpath.shtml 13/17
12/10/2017 Java ClassPath
Sunil Sharma
February 1, 2012
How to set the class path.
Pradeep Patel
February 18, 2012
Facing problem to set the classpath in java
Hello Sir I'm Pradeep Patel facing problem to set path and classpath for java programs
deepika
March 3, 2012
hi
madhavi
June 29, 2012
java
I have set the path and classpath in environment variables.eventhough iam getting the error like javac:file not found:Demo.java usage java:<options> <source files> please
rectify my mistake if any
Chatbox
Live help is offline...
https://www.roseindia.net/java/java-classpath.shtml 14/17
12/10/2017 Java ClassPath
Nejla
September 28, 2012
sYQaUsZUhBRjMz
My problem is the recoruse file is available in one context (say aa), I'm trying to load the same using ResourceBundle from another context (say bb). But always I get
MissingResourceException exception. But it works well when I put the properties file under bb context I think I can use the solution that you mentioned in this post for the time
being. But I'm searching for a solution so that I can use ResourceBundle(since the property file is for i18n purposes). Any way thanks dude it is indeed a good post.
abhishek kumar
November 2, 2012
how to set classpath temporary in java
two different folder having same package and same class name
Thiru
July 31, 2013
Java Class path
https://www.roseindia.net/java/java-classpath.shtml 15/17
12/10/2017 Java ClassPath
Search
Ads
Chatbox
Live help is offline...
https://www.roseindia.net/java/java-classpath.shtml 16/17
12/10/2017 Java ClassPath
TOP TUTORIALS
JAVA (HTTP://WWW.ROSEINDIA.NET/JAVA/INDEX.SHTML)
SPRING (HTTP://WWW.ROSEINDIA.NET/SPRING/INDEX.SHTML)
HIBERNATE (HTTP://WWW.ROSEINDIA.NET/HIBERNATE/INDEX.SHTML)
PHP (HTTP://WWW.ROSEINDIA.NET/PHP/INDEX.SHTML)
STRUTS (HTTP://WWW.ROSEINDIA.NET/STRUTS/INDEX.SHTML)
Chatbox
Live help is offline...
https://www.roseindia.net/java/java-classpath.shtml 17/17