![]() |
| ||
| java in mandrake linux 10.0 help i'm using mandrake linux 10.0 . i have installed java compiler successfully. but when i'm trying to use the comand "javac" it is not working. the following are the typical outputs plz help......... [nabakishore@10 Clock]$ ls Clock.class Clock.java example1.html [nabakishore@10 Clock]$ javac Clock.java bash: javac: command not found [nabakishore@10 Clock]$ java Clock Exception in thread "main" java.lang.UnsupportedClassVersionError: Clock (Unsupported major.minor version 49.0) at java.lang.ClassLoader.defineClass0(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:537) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123) 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) [nabakishore@10 Clock]$ |
| ||
| Re: java in mandrake linux 10.0 help Hi everyone, Please list exactly what you are typing at the command line Richard West |
| ||
| Re: java in mandrake linux 10.0 help That's different JVM implementations. You're getting the major/minor version error, because you might have compiled a project in 1.5 and trying to run it on 1.4. |
| ||
| Re: java in mandrake linux 10.0 help Hi everyone, Quote:
Richard West ***************************************************** |
| ||
| Re: java in mandrake linux 10.0 help Exactly. 1.5 is suppose to be backward compatible when you compile with the 1.4 source flag, but the JVM implementation is still different, which in turn causes the major/minor version error. I had this same problem a while back. I compiled the source in perfect 1.4 syntax, but it gave me the same error. I then tried to compile with the 1.4 -source flag, but that didn't help any. After that, I learned that the implemenation details were still different no matter what. Of course, if you use 1.5 syntax it definately won't work on 1.4 JVMs and JREs. It's weird since they call it backward compatible, but it's really not. |
| ||
| Re: java in mandrake linux 10.0 help Quote:
bash: javac comand not found but when i'm copying the hello.java into /java/bin/ and cd to /java/bin/ and typing "./javac hello.java" it is creating hello.class and its working tell me how to run it if the .java file is in some other directory |
| ||
| Re: java in mandrake linux 10.0 help Hi everyone, Quote:
Do this javac cp hello.java It'll work now. Remember to type the location of your file and not only hello.java. The same goes for the javac compiler Richard West ***************************************************** |
| ||
| Re: java in mandrake linux 10.0 help thank u Mr Richard West . but the cp option is not working , rather the following is working [nabakishore@10 nabakishore]$ javac -d /home/nabakishore/ HelloWorld.java [nabakishore@10 nabakishore]$ java HelloWorld Hello, World [nabakishore@10 nabakishore]$ |
| ||
| Re: java in mandrake linux 10.0 help If you add the -source 1.4 flag you will NOT get 1.4 compatible classfiles. All that does is flag 5.0 only features as errors in the code, effectively ensuring whether it would compile using a 1.4 compiler. You also need to add the -target 1.4 flag. |
| |||
| Re: java in mandrake linux 10.0 help Hello, Background The reason you are receiving the 'UnsupportedClassVersionError' is because the 'bash' shell is finding the default installed 'java' bundled with MDK (Mandrake) 10. You can find which 'java' or 'javac' (or any command) will be run by bash by entering the following command: which <command>For instance, below is the output I get on my machine when I want to see which java binary will be run: kate@pioneer:[~]$ which javaI suspect yours may be running '/usr/bin/java'. This is the 'Kaffe Virtual Machine' environment and not much good for anything except taking up disk space. It lacks compatibility in many ways with the current releases of Java. Quote:
Quote:
Solution Quote:
export PATH=/java/bin/:$PATHHowever when you close your shell session or begin a new one you will have to re-export this path. To make this change permanent (so it is set automatically each time you start a new shell session) you need to place this into your '.bashrc' (bash resource) file. This file is located in your home directory. For example my '.bashrc' file is located in the following location '/home/kate/.bashrc'. Simply add the command above to the end of this file. For future reference It is bad practice to install software into the root directory on Linux. You should install the JDK (or any software for use by you only) into your home directory. If you want to install something which can be accessed by any other user of the machine you should install it under the '/usr/local/' directory as the root user. If you want to rectify this you can move the installed JDK into your home directory by issuing the following command: mv /java /home/<your_user_name>/Now just change the line you added to the '.bashrc' file to point to '/home/<your_user_name>/java/bin' instead. Hope this helps, Kate |
| All times are GMT -4. The time now is 2:43 pm. |
Forum system based on vBulletin Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
©2003 - 2009 DaniWeb® LLC