bonjour à tous.
j'ai téléchargé la jre et la jdk pour linux et fais les configurations nécesssaires comme indiquées sur le site de sun mais quand j'écris un simple programme, la simple commande javac n'est pas reconnu.
De l'aide svp. Merçi d'avance
bonjour à tous.
j'ai téléchargé la jre et la jdk pour linux et fais les configurations nécesssaires comme indiquées sur le site de sun mais quand j'écris un simple programme, la simple commande javac n'est pas reconnu.
De l'aide svp. Merçi d'avance
Bonjour,
Tu dois renseigner la variable d'environnement PATH en lui fournissant le chemin vers le repertoire bin du JDK.
Pour plus d'informations, voir la FAQ : Qu'est-ce que le PATH ?
Plutôt que de modifier le path en lui même j'ai plutôt tendance à faire des symlinks des exécutables java dans /usr/bin, ce qui est bourrin je l'accorde mais marche plus que bien.
Imaginons que tu ais installé ton jdk dans
/usr/java/jdk/
Il te faudra faire
ln -s /usr/java/jdk/bin/javac /usr/bin
++
j'arrive à compiler grâce à ce vous m'avez dit mais j'ai cette erreur quand j'exécute pourtant le fichier class est crée:
Exception in thread "main" java.lang.ClassFormatError: Bonjour (unrecognized class file version).
une idée?
import java.io.*;
public class Bonjour{
public static void main(String[] args){
System.out.println("Bonjour");
}
}
Le import java.io.*; n'est pas nécessaire dans ton cas.
Ensuite est-ce que tu nommes ton fichier source : Bonjour.java ?
@+
Le fichier est bien nommé Bonjour.java, je ne comprend pas
erreur complète:
Exception in thread "main" java.lang.ClassFormatError: Bonjour (unrecognized class file version)
at java.lang.VMClassLoader.defineClass(libgcj.so.7)
at java.lang.ClassLoader.defineClass(libgcj.so.7)
at java.security.SecureClassLoader.defineClass(libgcj.so.7)
at java.net.URLClassLoader.findClass(libgcj.so.7)
at java.lang.ClassLoader.loadClass(libgcj.so.7)
at java.lang.ClassLoader.loadClass(libgcj.so.7)
at java.lang.Class.forName(libgcj.so.7)
at gnu.java.lang.MainThread.run(libgcj.so.7)
Il me semble que tu n'utilises pas la bonne version du JDK : tu utilise GCJ au lieu du JDK de Sun.
Tape :
dans le terminal pour voir.
Code : Sélectionner tout - Visualiser dans une fenêtre à part java -version
j'obtiens ceci:
java version "1.4.2"
gij (GNU libgcj) version 4.1.1 20060525 (Red Hat 4.1.1-1)
Comme je le pensais ,tu utilises bel et bien GCJ.
Désinstalle-le et modifie ta variable PATH en conséquence.
comment je fais please
cd /usr/bin
rm java javac javah jar javaw javaws
ln -s /usr/java/jdk/bin/java /usr/bin
ln -s /usr/java/jdk/bin/javac /usr/bin
ln -s /usr/java/jdk/bin/javah /usr/bin
ln -s /usr/java/jdk/bin/jar /usr/bin
ln -s /usr/java/jdk/bin/javaw /usr/bin
ln -s /usr/java/jdk/bin/javaws /usr/bin
Merçi beaucoup.
Enfin j'ai pu exécuter mon simple "Bonjour" et grâce à vous j'ai appris qq commandes UNIX.
merçi encore. A+
bonjour SinokEnvoyé par sinok
sais tu comment je peux savoir c'est qui lance mon tomcat sous unix ?
c'est parce que mon application lance un script externe mais au lancement ce script génére des erreurs et je ne peux les lire.
j'ai fait ca pour produire la sortie dans un fichier et ca ne marche pas.
le script est exécuté juste à moitié lorsqu'il est appelé à partir de l'application java.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 String[] cmd = new String[4]; cmd[0] = "/bin/csh"; cmd[1] = "/usr/local/apache-tomcat-5.5.17/titi.csh "; cmd[2] = "argument_1"; cmd[3] = ">>sortie";
mais si je lance le script sur la ligne de commande directement, il s'execute bien.
je ne comprends plus rien. aide moi s'il te plait.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager