DISQUS

Tech-Recipes: Java: Exception in thread main java.lang.NoClassDefFoundError | Java programming | Tech-Recipes

  • LP · 1 year ago
    Very helpful! I was stuck on this.. Thanks
  • Mimi · 1 year ago
    My Classpath looks right, but I still get the error: Exception in thread "main"

    .;C:\Program Files\Java\jdk1.6.0_01\lib
  • Rajesh · 11 months ago
    the classpath should include the directory in which u r keeping ur own class files.
  • Andy · 1 year ago
    I'm sorry it did not work.
  • chandu · 10 months ago
    if u have stored ur classes in the directory other than JDK installed...we need to set path to the bin dir by using
    set path=.....
    and for classes
    set classpath=....
  • Amruta · 8 months ago
    Thank you!! It really helped me.
    i just copied my files in bin dir. try doing this.
  • harpreet · 8 months ago
    thank you it really helped me
  • CP · 1 year ago
    I have the same issue Exception in thread "main" java.lang.NoClassDefFoundError: any luck
  • v · 1 year ago
    Just call this at the directory where you classfile XYZ.class is located :

    java -classpath . XYZ
  • karep · 12 months ago
    salam

    didn't work for me ...
    any idea ?? :'(

    wassalam
  • Nick · 12 months ago
    I had a problem with that, and then I noticed, that I had written"java -classpath . XYZ.class" instead of "java -classpath . XYZ" Don't know, if this helps you, but worked for me :)
  • springrider · 11 months ago
    Thanks a lot! It help me!
  • abhishek · 9 months ago
    Microsoft Windows [Version 6.0.6001]
    Copyright (c) 2006 Microsoft Corporation. All rights reserved.

    C:\Users\mdube>cd\

    C:\>javac C:\abhishek\Mohit.java

    C:\>java C:\abhishek\mohit
    Exception in thread "main" java.lang.NoClassDefFoundError: C:\abhishek\mohit

    C:\>java C:\abhishek/mohit
    Exception in thread "main" java.lang.NoClassDefFoundError: C:\abhishek/mohit

    C:\>javac C:\abhishek/Mohit.java

    C:\>$Recycle.Bin
    '$Recycle.Bin' is not recognized as an internal or external command,
    operable program or batch file.

    C:\>JAVAC
    Usage: javac <options> <source files>
    where possible options include:
    -g Generate all debugging info
    -g:none Generate no debugging info
    -g:{lines,vars,source} Generate only some debugging info
    -nowarn Generate no warnings
    -verbose Output messages about what the compiler is doing
    -deprecation Output source locations where deprecated APIs are us
    ed
    -classpath <path> Specify where to find user class files
    -sourcepath <path> Specify where to find input source files
    -bootclasspath <path> Override location of bootstrap class files
    -extdirs <dirs> Override location of installed extensions
    -d <directory> Specify where to place generated class files
    -encoding <encoding> Specify character encoding used by source files
    -source <release> Provide source compatibility with specified release
    -target <release> Generate class files for specific VM version
    -help Print a synopsis of standard options


    C:\>JAAVA
  • Tzell · 11 months ago
    I am using JGrasp as a new Java learner and I hate it. The errors given when compiled to vague. Can anyone suggest a better application to begin learning and developing in?
  • FrederikNS · 11 months ago
    the errors are thrown by the Sun Java Compiler, and that doesn't differ regardless of which developer environment you try to program in, as long as it's java, you'll have to stick with it.
    But some of the best environment to program java in would have to be Eclipse or NetBeans.
    They have an awful lot of features, and is very easy to use when you get over the initial general troubles, such as which features to use, and getting an overview of all the stuff they can do.
  • stacy · 9 months ago
    try netbeans
  • ahmad aghajani · 11 months ago
    My Classpath looks right, but I still get the error: Exception in thread "main"

    .;C:\Program Files\Java\jdk1.5.0_01\lib
  • Jim Thomas · 10 months ago
    The above comment did not work. For newbies it may be easier to save the source files in the bin directory eliminating any path issues.
  • chandu · 10 months ago
    we need to set two paths
    1. for JDK use following command
    set path=C:\......
    2. for classes where u compiled and kept
    set classpath=D:\prgrams......
  • grace · 10 months ago
    you say executing your program using ... pls how exactly do i execute it. i need the basic steps
  • Sushil Karane · 10 months ago
    java page we get the error as follows :

    Exception in thread "main" java.lang.UnsupportOperationException at sun.jdbc.odbc.jdbcOdbcConnection.createStatement(Unknown Source)
    at DBConn.<init><DBConn.java,Compiled Code>
    at ReceiveMail.<init><Receivemail.java,Compiled Code>
    at insertion.main(insertion.java:10)
  • JAaronAnderson.com · 10 months ago
    For my CLASSPATH I have :
    C:\Program Files\Java\jdk1.6.0_10\jre\lib;C:\Program Files\Java\jdk1.6.0_10\jre\bin;C:\novell\ndk\ndssdk\java\lib\ldap.jar;.;C:\JavaProjects\SearchLDAPTest
    Where C:\JavaProjects\SearchLDAPTest is where my List.class compiled class resides

    I also created JAVA_HOME Variable for my user with a value of:
    C:\Program Files\Java\jdk1.6.0_10\

    and finally I have for my Path:
    C:\Program Files\Java\jdk1.6.0_10\jre\bin;D:\Program Files\SSH Communications Security\SSH Secure Shell;C:\Program Files\Java\jdk1.6.0_10\bin\javac.exe;C:\novell\ndk\njclv2r\src\njcl

    Which C:\Program Files\Java\jdk1.6.0_10\jre\bin is the bin of the RUNTIME or should I also list C:\Program Files\Java\jdk1.6.0_10\bin :: the JDK bin/ instead ?
    anyone with any CLEAR ideas ? thx
  • Abhhilash · 10 months ago
    I have created the hello world program and i am using textpad to do that
    My program is compiling but when i run it gives me an error
    java.lang.NoClassDefFoundError:
    Exception in thread "main"
    Tool completed with exit code 1
    I have set my path to C:\jdk1.3\bin
    and the classpath to where the program reside but in vein can anybody help
  • irene · 9 months ago
    noooooo.... i have tried it all.... :(
    it keeps saying that java.lang.noclassdeffounderror thing...
  • Nathiya S · 9 months ago
    how do create path to j2sdk1.4.2_02
    i run small prgm, my error is
    exception in thread "main" java.lang.noclassdefFoundError

    how do clear my error
  • Martin · 9 months ago
    I had the same problem. It turned out the cause was that I tried to compile a java sample file from a read-only folder.
    When I copied the .java file to my hard drive the problem went away
  • Rakesh · 9 months ago
    Thanks great info
  • bothanks · 9 months ago
    omfg ahmad aghajani ,
    i o u big!!!

    ty for suggesting at putting that in the Class path file, a program of mine has been corrupted for over 2 yrs, and i tried to fix it 1 last time, and ur suggestion worked!!

    ty!!
  • Amruta · 8 months ago
    if After setting the path also it doesnt work.. save all files in bin dir and run the prgram using that path.
  • Neicey · 8 months ago
    Here is how i fixed mine.
    The .Java and the .Class file is located in C:\Java . i got the above error and changed directory at the dos prompt by typing
    cd Java (Enter)
    Then I compiled by typing the below
    C:\Java>"C:\Program Files\Java\jdk1.5.0_16\bin\javac.exe" C:\java\saluton.java

    Than I run by typing the below
    C:\Java>java Saluton
    Results ...

    Saluton Mundo!

    Hope this Helps . Arichards
  • 007varun · 3 weeks ago
    is it a problem of program?.
  • Sham · 8 months ago
    Thanx a lot very usefull!!
  • sad · 8 months ago
    After doing the following....where m is my class name

    java -classpath . m
    i get this........

    Unrecognized option: -classpath.m
    Could not create the Java virtual machine.
    help is appreciated!!!1
  • techno · 8 months ago
    i think you are not giving space between the classpath n dot n m...
    like java -classpath[space].[space]m

    mine was also having the same error but when i gave spacing between them it worked,,..so u can also try dis once...
  • desperado · 7 months ago
    thanks techno, great advice!
  • Su · 4 months ago
    Your advice point out what I missed. Thz alot techno.
  • The One · 8 months ago
    Ha! I figured it out! I just wasn't compiling every file! "javac *.java" fixed it all! YES!!
  • ut_stud007 · 6 months ago
    Awesome dude thanks this solved my problem..I used to think that java.exe compiles and executes the application but I gues I was wrong....
  • Gary Lesperance · 8 months ago
    I had the same problem but your suggestion above did not work. You missed the most obvious problem which is that Java is case sensitive. If you reference the class as Helloworld in the script and then try to run it using java -classpath . helloworld (with the file actually named helloworld.class) then you will get the same error referenced above. The problem is the upper case "H" in the script and then the file starting with a lower case "h".
  • GXOne · 8 months ago
    OMG Thankyou After 5 Hours Thankyou.. with that advice it all works exactly the way it should LOL
  • nice · 8 months ago
    hi to all

    too , i have error :

    Exception in thread "main" java.lang.NoClassDefFoundError: nameclass

    help me.
  • Crimson · 8 months ago
    hi guys,

    I got this error when i made the mistake of running the class file. Make sure you are running the job correctly (fyi, I'm running vista):

    Correct: C:\Users\Crimson\teaching> java Example

    Incorrect: C:\Users\Crimson\teaching> java Example.class

    This is really easy to forget about, especially if you're used to using an IDE like Eclipse, which was the case for me. I scratched my head for a little while and feel really dumb now.
  • desperado · 7 months ago
    i used textpad and i still got the same error, can anyone tell me what's wrong?
  • Thomaso · 7 months ago
    Thanks sooo much. if the java - classpath . helloworld doesnt work it is probably due to spacing and upper lower case letter problem.

    for me i didnt put a space after java and a space either side of the full stop. and i forgot to write my class with an upper case letter which is how it was saved.

    java(space) -classpath(space) . (space)Welcome1
  • jango19 · 7 months ago
    Exception in thread "main" java.lang.NoClassDefFoundError: Receiver/class
    Caused by: java.lang.ClassNotFoundException: Receiver.class
    at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
    Could not find the main class: Receiver.class. Program will exit.

    where Receiver is my class..code is getting compiled perfectly but when i run its givin the above error..
  • Ram · 5 months ago
    Hi ,

    First set the JAVA_HOME variable with your bin directory.
    then try to run .it will help u.

    Regards
    Ram Yadav
  • priyaj · 7 months ago
    hello ,i got a problem while executing a sample java program.
    error is java.lang.NoClassDefFoundError: and im using jdk 1.6 version .
    someone helpout this
  • aravind · 6 months ago
    thanq very much for giving the solution.......
  • nabil · 6 months ago
    Awesome.
    It worked great
  • hello · 5 months ago
    hey im not trieng to program a file or anything like taht. im just trieng to play a private game server and i keep getting the error message Exception in thread "main" java.lang.nodeffound: joader i have no idea how to fix it can anyone help? my CLASSPATH is C:\Program Files\Java\jdk1.5.0_18\bin; and my PATH in C:\Program Files\Java\jdk1.5.0_18\bin


    anyone help?
  • hello · 5 months ago
    hey this is me hello again and please dont post anything too confusing i have no knowledge of java except for classpath and path so please keep it simple
  • hello · 5 months ago
    and instead of joader its loader sorry for that
  • Kieran Taylor · 5 months ago
    !!ALERT!! !!ALERT!!

    I just followed every suggestion in this string and no dice...

    FINALLY I GOT IT ----> (on Windows XP) MAKE SURE YOU COMPILE YOUR PROGRAM WITH C:\...javac ClassName.java before you try to execute with C:\...java ClassName

    You will know your program is compiled when you find a ClassName.class file in the same folder as your original ClassName.java program.

    Hope this helps the last desperate few.
    And yes, of course, make sure your path and classpath are correctly configured.
  • Loser · 5 months ago
    Worked for me !!!
  • sixlead · 5 months ago
    You will also get this error if you append the .class designator when you try to run it. as
    java HelloWorld.class

    java is expecting a class so the .class suffix is not necessary

    of course your class path might be wrong also ;-)
  • Anonymous · 4 months ago
    Does not work
  • Ian · 4 months ago
    Thank you - this is so helphul for me at the moment

    If you are also dependent on a jar file in the same folder you may need to have something like
    java -classpath .;./dependent.jar helloworld
  • rahul agarwal · 4 months ago
    thanks for the replies that have been posted....
    i am so glad that my problem has been solved...
  • Name · 3 months ago
    THANK YOU! My God this problem was so annoying
  • daedana · 3 months ago
    Gret thank you. I had the problem with the simplest program and the code was published on a book so I thought there can be nothing wrong with it.
    THANK YOU again :)
  • vazeer · 3 months ago
    Thank You it really worked for me
  • nahawand · 3 months ago
    That worked! Thanks a lot,

    It would probably help if you explicity indicate that the extension ".class" should not be used when using "-classpath" .
  • nahawand · 3 months ago
    Ops, should've read the above comments first!

    my bad.. lol
  • JavaNoOb · 3 months ago
    Well, I'm currently making my own chatserver in java, and when i compile with cmd, i get this error. Any help? I'm using the guide on Hello World on compiling and making classes.
  • abdul696 · 3 months ago
    for coming out from this type of error
    we can run the programm by using diffrn style..
    like

    java -cp . className
  • rmitgeek · 3 months ago
    It might be due to packages.
    Try removing any "package" from the top of your *.java files.
  • shelli123 · 2 months ago
    I am getting the class path error.My XYZ.java compiles good..When i run the program i and getting the below error..

    I had set the Classpath for the dependency jar and the Java_HOME = C:\Program Files\Java\jdk1.5.0_20\bin
    C:\Program Files\DDEForJava\examples\com\javaparts\dde\examples>java -cp . Excel
    Async
    Exception in thread "main" java.lang.UnsupportedClassVersionError: ExcelAsync (U
    nsupported major.minor version 49.0)
    at java.lang.ClassLoader.defineClass0(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:12
    3)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:55)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:194)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)

    Any help would be appreciated//
    Thanks
    Shelli
  • jatsumo · 2 months ago
    C:\javaprog>java HelloWorld
    Exception in thread "main" java.lang.UnsupportedClassVersionError: HelloWorld (U
    nsupported major.minor version 50.0)
    at java.lang.ClassLoader.defineClass0(Native Method)
    at java.lang.ClassLoader.defineClass(Unknown Source)
    at java.security.SecureClassLoader.defineClass(Unknown Source)
    at java.net.URLClassLoader.defineClass(Unknown Source)
    at java.net.URLClassLoader.access$100(Unknown Source)
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClassInternal(Unknown Source)

    C:\javaprog>
  • arkangel112 · 2 months ago
    this happening 2 me, now i cant play a runescape private server thats 508, help me please?
  • b00red · 2 months ago
    i don't understand this 'Executing your program using this command should correct the problem:
    java -classpath . helloworld' ?
    where / how do i execute with another classpath?
  • Hamhama · 2 months ago
    For a beginner you may get this error also if you run:
    java helloworld.class
    Instead try to run:
    java helloworld
  • graysonc · 2 months ago
    Okay, here's the mistake I made (which almost drove me crazy):
    set classpath = .;M:\;C:\Program Files\Java\jre1.6.0_14\bin;
    is NOT the same as:
    set classpath=.;M:\;C:\Program Files\Java\jre1.6.0_14\bin;
    If you put spaces around the '=' it won't work. The file would always compile but would only run without the package designation. As soon as I added the 'package' statement at the top I could compile it but it would always give the above error when I tried to run it. Hope this helps someone.
  • dba_dev · 2 months ago
    No, java -classpath . helloworld did not work. What next?
  • aatemp · 2 months ago
    Thanks, It helped
  • Ankzz · 2 months ago
    It works.. One needs to pay heed to what has been said... Follow it step wise and U wont get any error
  • vinayak1 · 1 month ago
    superb information. excellent !
  • trinitysantosh · 1 month ago
    Hi every one.

    I have installed red5 server on my machine and also JDK version of 1_5_0_11

    java -classpath C:\Program Files\Red5\red5.jar F:\Video Chat\red5chatv2.1\JAVA-RED5\src\chat\application.java

    but when I tryed to compile to get my application.class file using above shown command on command promt I got error : Exception in thread "main" java.lang.NoClassDefFoundError: Files\Red5\red5/jar
  • rahullahiri · 1 month ago
    thnx...great work buddy.It solved the problem for me.thanks a lot.
  • shobana · 1 month ago
    Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/xml/serializer/TreeWalker
    at org.apache.xalan.processor.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:823)
    at com.pg.EDICustomize.EDISplit204.generateTarget(EDISplit204.java:353)
    at com.pg.EDICustomize.EDISplit204.execute(EDISplit204.java:99)
    at com.pg.EDICustomize.EDISplit204.main(EDISplit204.java:392)
    Caused by: java.lang.ClassNotFoundException: org.apache.xml.serializer.TreeWalker
    at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
    ... 4 more
    Java Result: 1
    BUILD SUCCESSFUL (total time: 2 seconds)

    i got this error please help me to resolve this
  • Kevin · 1 month ago
    I had this issue on linux. Turned out it was simply that the path had a space in it. When this was changed it worked fine.
  • Thunder9751 · 1 week ago
    how do you execute it with THAT command? like what do you do? where do you type that in (java -classpath)?
  • Chip41092 · 1 week ago
    Ya, I've read all of these comments and have no clue where to type the java -classpath . XYZ
  • Bancio · 5 days ago
    Thanks ... this works for me... I have been seem this type before but I was typeing '.' close to '-classpath' ...
  • puneeth_n · 2 days ago
    thanks a lot it was really heplful..