File not found avec javac
Fermé
Archange27
Messages postés
240
Date d'inscription
lundi 1 mars 2010
Statut
Membre
Dernière intervention
20 août 2020
-
3 août 2015 à 01:59
Archange27 Messages postés 240 Date d'inscription lundi 1 mars 2010 Statut Membre Dernière intervention 20 août 2020 - 11 août 2015 à 00:43
Archange27 Messages postés 240 Date d'inscription lundi 1 mars 2010 Statut Membre Dernière intervention 20 août 2020 - 11 août 2015 à 00:43
A voir également:
- Afs file not found
- Host file - Guide
- .Bin file - Guide
- .Dat file - Guide
- Swf file player - Télécharger - Lecture
- File magic - Télécharger - Traitement de texte
2 réponses
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 020
3 août 2015 à 06:43
3 août 2015 à 06:43
Bonjour,
Déjà l'installation du JDK et la configuration du PATH semble bonne bonne, sinon il ne t'afficherais pas l'aide de javac.
Par contre je pense que tu n'es pas au bon endroit quand tu lances ta commandes. Par défaut lorsque tu ouvres une invite de commande tu es dans C:\Users\MonNom, il faut ensuite se déplacer vers le dossier qui contient ton fichier avec la commande cd (change directory).
Par exemple cd C:\Workspace\MonProjet où MonProjet serait le dossier où se situe le fichier Cercle.java
Attention aux packages :
Si ton programme commence par la ligne
Déjà l'installation du JDK et la configuration du PATH semble bonne bonne, sinon il ne t'afficherais pas l'aide de javac.
Par contre je pense que tu n'es pas au bon endroit quand tu lances ta commandes. Par défaut lorsque tu ouvres une invite de commande tu es dans C:\Users\MonNom, il faut ensuite se déplacer vers le dossier qui contient ton fichier avec la commande cd (change directory).
Par exemple cd C:\Workspace\MonProjet où MonProjet serait le dossier où se situe le fichier Cercle.java
Attention aux packages :
Si ton programme commence par la ligne
package tata.toto;cela veut dire que le fichier Cercle.java doit être situé dans une arborescence de fichiers MonProjet\tata\toto\Cercle.java mais la commande javac doit être effectuée dans le dossier MonProjet, pas dans le dossier toto.
cd C:\Workspace\MonProjet javac tata\toto\Cercle.java java tata.toto.Cercle
Archange27
Messages postés
240
Date d'inscription
lundi 1 mars 2010
Statut
Membre
Dernière intervention
20 août 2020
13
Modifié par Archange27 le 5/08/2015 à 02:42
Modifié par Archange27 le 5/08/2015 à 02:42
Rebonjour,
J'ai un nouveau problème.
J'ai décidé de déplacer Cercle.java du Bureau à Documents, puis j'ai fait cd\bla bla et j'ai recompilé, ça marche bien. Mais l'exécution de Cercle donne un message d'erreur " Erreur : impossible de trouver ou charger la classe principale Cercle"
Quel est le problème ?
Merci d'avance de votre aide
J'ai un nouveau problème.
J'ai décidé de déplacer Cercle.java du Bureau à Documents, puis j'ai fait cd\bla bla et j'ai recompilé, ça marche bien. Mais l'exécution de Cercle donne un message d'erreur " Erreur : impossible de trouver ou charger la classe principale Cercle"
Quel est le problème ?
Merci d'avance de votre aide
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 020
5 août 2015 à 07:52
5 août 2015 à 07:52
L'erreur est explicite, il ne trouve pas la classe principale, c'est à dire le fichier .class qui contient la méthode main(String[]) du programme.
Soit parce que tu n'es pas dans le bon dossier, soit parce que la classe Cercle n'est pas compilée, ou ne contient pas la méthode main.
Soit parce que tu n'es pas dans le bon dossier, soit parce que la classe Cercle n'est pas compilée, ou ne contient pas la méthode main.
Archange27
Messages postés
240
Date d'inscription
lundi 1 mars 2010
Statut
Membre
Dernière intervention
20 août 2020
13
5 août 2015 à 20:54
5 août 2015 à 20:54
Ce que je ne comprends pas c'est qu'avant quand tout était sur le Bureau, ça marchait bien, et il a suffi que je déplace les trois fichiers (java, class et le 3ème) sur mes documents pour que la classe soit introuvable. Quand je redéplace tout sur le Bureau ça ne marche plus !Que dois-je faire pour que tout marche à nouveau ?
Y a-t-il un fichier à supprimer quelque part ? Se peut-il que la nouvelle classe Cercle empiète sur une déjà créée ?
Y a-t-il un fichier à supprimer quelque part ? Se peut-il que la nouvelle classe Cercle empiète sur une déjà créée ?
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 020
5 août 2015 à 20:58
5 août 2015 à 20:58
- "je déplace les trois fichiers (java, class et le 3ème)". C'est quoi le 3ème ?
- Comment commences ton fichier Cercle.java ? (tout le code jusqu'à
public class Cercle
) - Est-ce que la classe Cercle contient une méthode
public static void main(String[] args)
?
Archange27
Messages postés
240
Date d'inscription
lundi 1 mars 2010
Statut
Membre
Dernière intervention
20 août 2020
13
5 août 2015 à 21:20
5 août 2015 à 21:20
Voici le texte entier du programme:
import java.util.*;
public class Cercle
{
public static void main(String [] arg)
{
// 1. Déclarer les variables
double unRayon, lePerimetre ;
Scanner lectureClavier = new Scanner(System.in);
// 2.a Afficher le message "Valeur du rayon : " Ã l'écran
System.out.print("Valeur du rayon :");
// 2.b Lire au clavier une valeur, placer cette valeur
// dans la variable unRayon
unRayon = lectureClavier.nextDouble();
// 3. Calculer la circonférence en utilisant la formule consacrée
lePerimetre = 2 * Math.PI * unRayon ;
// 4. Afficher le résultat
System.out.print("Le cercle de rayon " + unRayon + " a pour périmètre : " + lePerimetre );
} // Fin de la fonction main()
} // Fin de la classe Cercle
Les trois fichiers sont Cercle.java (programme principal), Cercle.java~, et Cercle.class (apparu après la compilation).
import java.util.*;
public class Cercle
{
public static void main(String [] arg)
{
// 1. Déclarer les variables
double unRayon, lePerimetre ;
Scanner lectureClavier = new Scanner(System.in);
// 2.a Afficher le message "Valeur du rayon : " Ã l'écran
System.out.print("Valeur du rayon :");
// 2.b Lire au clavier une valeur, placer cette valeur
// dans la variable unRayon
unRayon = lectureClavier.nextDouble();
// 3. Calculer la circonférence en utilisant la formule consacrée
lePerimetre = 2 * Math.PI * unRayon ;
// 4. Afficher le résultat
System.out.print("Le cercle de rayon " + unRayon + " a pour périmètre : " + lePerimetre );
} // Fin de la fonction main()
} // Fin de la classe Cercle
Les trois fichiers sont Cercle.java (programme principal), Cercle.java~, et Cercle.class (apparu après la compilation).
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 020
5 août 2015 à 21:24
5 août 2015 à 21:24
Cercle.java~ ne sert à rien (je ne sais pas d'où ça sort)
Le code est bon. Donc si c'est sur le bureau, c'est comme la dernière fois :
Le code est bon. Donc si c'est sur le bureau, c'est comme la dernière fois :
cd C:\Users\...\Desktop
javac Cercle.java
java Cercle
3 août 2015 à 20:25
Merci beaucoup :)
Y a-t-il des sites où on peut trouver les remèdes aux messages d'erreur, je suis encore novice (je programmais en basic il y a fort longtemps sur amstrad mais les ordi de maintenant sont bien différents) ?
Bonne soirée !
3 août 2015 à 20:33
D'un point de vue générale, toute l'API Java est documentée, ce qui permet de savoir précisément ce que font chaque classe et méthode :
https://docs.oracle.com/javase/8/docs/api/