Problème de package [Résolu]

Messages postés
21
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
1 juillet 2011
- - Dernière réponse : cs_Julien39
Messages postés
6449
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
17 mai 2018
- 1 juil. 2011 à 10:55
Bonjour,

Je voudrais faire un package que je pourrais importer par la suite dans une application.
Comme il est recommandé, j'ai ouvert un répertoire dans le racine de C (dans un premier temps)
J'ai appelé ce répertoire du nom du package que je veux créer "affpan".

C:\affpan

Dans ce répertoire j'ai écrit une classe "Crepan"

package affpan;

import javax.swing.*;
import java.awt.Dimension;
import java.awt.Toolkit;
import java.net.*;

public class CrePan extends JFrame
{

private static final long serialVersionUID = 1L;

public void MthCrePan()
{
// Constructeur de panneau

setTitle(" --- Essai d'affichage d'un panneau --- ");
setResizable(false);

// Affichage de l'icone du panneau (non utilisé pour l'instant)

// Toolkit tk = Toolkit.getDefaultToolkit();
// URL urlIco = this.getClass().getResource("Sdk-Ico.gif");
// setIconImage(tk.getImage(urlIco));

// Dessin du panneau proprement dit

Dimension dimEcran = tk.getScreenSize();
int largEcran = dimEcran.width;
int hautEcran = dimEcran.height;
int largFenetre = 756 + 6;
int hautFenetre = 400 + 28;
int decLarg = (largEcran - largFenetre) / 2;
int decHaut = (hautEcran - hautFenetre) / 2;
setBounds(decLarg, decHaut, largFenetre, hautFenetre);
setVisible(true);
}
}

Cette class CrePan comporte une méthode "MthCrePan" permettant de créer et d'afficher un panneau

Dans Eclipse j'écris une mini-application demandant l'affichage d'un panneau.

import affpan.*;
public class EssAffPan
{
public static void main(String[] args)
{
CrePan cp = new Crepan();
cp.MthCrePan();
}
}

Là, j'ai deux messages d'erreur:
Dans la première ligne "The import affpan cannot be resolved"
Dans la sixième ligne "Multiple markers at this line
- Crepan cannot be resolved to a type
- Crepan cannot be resolved to a type"

A noter que j'ai pris la précaution de fixer CLASSPATH comme suit:

.;C:\;

Quelqu'un pourrait-il me dire où est ma faute?

Merci d'avance...
Afficher la suite 

Votre réponse

13 réponses

Meilleure réponse
Messages postés
6449
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
17 mai 2018
278
3
Merci
Parfait alors,

bon courage pour la suite et n'oublie pas d'accepter le réponse.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 126 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_Julien39
Messages postés
6449
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
17 mai 2018
278
0
Merci
Pourquoi tu ne fais pas un .jar à ajouter au build path ??
Commenter la réponse de cs_Julien39
Messages postés
546
Date d'inscription
lundi 10 mai 2004
Statut
Membre
Dernière intervention
28 septembre 2011
4
0
Merci
Salut,

Je rajouterai que sauf erreur, Eclipse ne lit pas du tout la variable d'environnement classpath et se contente de ce qui est présent dans le Build Path du projet

gmi19oj19
Commenter la réponse de gmi19oj19
0
Merci
Je confirme, monte tes classes Java, et exporte-les ensuite sous forme d'archive .jar
Ce sera nettement plus portable que de jouer avec le classpath :p


--
Pylouq
Commenter la réponse de Utilisateur anonyme
Messages postés
6449
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
17 mai 2018
278
0
Merci
Pas de réponse ??
Commenter la réponse de cs_Julien39
Messages postés
21
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
1 juillet 2011
0
Merci
Ok, merci. Je vais essayé de faire un .jar avec ma classe Crepan.java. Je ne sais pas trop comment, mais je vais chercher...
Commenter la réponse de HenryP
Messages postés
6449
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
17 mai 2018
278
0
Merci
Si tu utilises un IDE c'est facile.

Avec eclipse, tu fais un click droit sur ton projet et tu choisit export et dans le type d'export, tu prends jar file (et pas Runnable jar file)
Commenter la réponse de cs_Julien39
Messages postés
21
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
1 juillet 2011
0
Merci
Bonjour,
Je travaille sous Eclipse. Merci, je vais essayer. Je te tiens au courant.
Commenter la réponse de HenryP
Messages postés
21
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
1 juillet 2011
0
Merci
Bonjour,
J'ai bien créé un fichier AffPan.jar dans lequel j'ai le fichier AffPan.java. Celui-ci se trouve dans mon répertoire c:\AffPan. J'ai ajouté ce fichier AffPan.jar dans l'onglet Libraries de Java Build Path du fichier EssAffPan qui doit en principe l'utiliser.
Mais cela ne fonctionne toujours pas quand je l'appelle sous forme de package dans EssAffPan.
Je pense, en fait, qu'il me faudrait un exemple bien précis de ce genre d'utilisation...
Commenter la réponse de HenryP
Messages postés
21
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
1 juillet 2011
0
Merci
Excuse: Dans le fichier AffPan.jar, c'est le fichier AffPan.class qui s'y trouve et non.pas AffPan.java.
Commenter la réponse de HenryP
Messages postés
6449
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
17 mai 2018
278
0
Merci
Que signifie "quand je l'appelle sous forme de package" normalement, tu utilises les classes des librairies externes comme si les classes qu'elles contiennent étaient directement enregistrées dan ton projet. et tu fais l'import de la même manière
Commenter la réponse de cs_Julien39
Messages postés
6449
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
17 mai 2018
278
0
Merci
Par exemple : tu as la classe suivante dans le package fr.exemple d'un projet quelconque.

package fr.exemple;

public class Exemple {

   public void test(){
      Sytem.out.println("ca marche");
   }

}


Sur le package, tu fais un click droit puis export, jar file et tu enregistres.

Tu créé un nouveau projet, différent. Tu créé tes packages et tu fais un click droit sur le projet et tu Choisis Configure build path. Et dans les librairies, tu fait Ad external jar file. Tu selectionne ton .jar.

Ensuite, tu veux utiliser la classe exemple dans ton nouveau projet :

package lancement;

import fr.exemple.Exemple;

public class Lanceur {

   public static void main(String[] argd){
      new Exemple().test();
   }

}


Et ca marche.
Commenter la réponse de cs_Julien39
Messages postés
21
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
1 juillet 2011
0
Merci
Bonjour,

Effectivement, ça marche, ça marche même très bien!

Un grand merci
Commenter la réponse de HenryP

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.