Importer une classe sans package
Résolu
Cosm8
Messages postés
107
Date d'inscription
Statut
Membre
Dernière intervention
-
KX Messages postés 16761 Date d'inscription Statut Modérateur Dernière intervention -
KX Messages postés 16761 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
je souhaite importer une classe simplement sans passer par un package mais je n'y parvient pas, lorsque je tente de compiler mon fichier, une erreur m'indique ceci :
le fichier printer.java étant dans le même répertoire que app.java
comment faire pour importer des classes sans passer par un package?
je souhaite importer une classe simplement sans passer par un package mais je n'y parvient pas, lorsque je tente de compiler mon fichier, une erreur m'indique ceci :
C:\Program Files\Java\jdk1.6.0_12\bin>javac app.java app.java:11: '.' expected import printer; ^ app.java:11: ';' expected import printer; ^ 2 errors
le fichier printer.java étant dans le même répertoire que app.java
comment faire pour importer des classes sans passer par un package?
A voir également:
- Importer une classe sans package
- Importer favoris chrome - Guide
- Microsoft visual c++ 2019 redistributable package - Guide
- Importer favoris firefox - Guide
- Importer contact carte sim - Guide
- Atk package c'est quoi ✓ - Forum Windows
2 réponses
Tu n'as pas besoin d'importer les classes qui sont dans le package courant (le package par défaut dans ton cas), elles seront toujours accessibles.
Si printer.java est dans le même dossier que app.java, alors la classe app trouvera automatiquement la classe printer. Tu devrais donc supprimer ta ligne "import printer".
Remarque : les noms de classes en Java sont censé commencé par une majuscule, donc leur nom de fichier aussi : App.java et Printer.java
Si printer.java est dans le même dossier que app.java, alors la classe app trouvera automatiquement la classe printer. Tu devrais donc supprimer ta ligne "import printer".
Remarque : les noms de classes en Java sont censé commencé par une majuscule, donc leur nom de fichier aussi : App.java et Printer.java
En fait la classe qui importe est dans un package, la classe à importer n'est pas dans un package particulier
Si je comprends bien "app.java" est dans un package, alors il faut le compiler avec ce package.
Exemple : tu as tout dans le répertoire /monProjet
C'est à dire que tu aurais (si j'ai bien compris) /monProjet/monPackage/app.java et /monProjet/printer.java, dans ce cas tu devrais aller dans le répertoire /monProjet et avoir cette commande :
Mais ça ne règlera pas ton problème, et comme ça je ne vois pas de manière de le résoudre simplement avec un import, alors on peux toujours faire appel au classpath ou à un ClassLoader mais c'est pénible, c'est aussi pour ça qu'il faudrait toujours mettre des classes dans un package !
PS. JDK 1.6.0_12 c'est assez ancien comme JDK, il faudrait se mettre à jour !!!
Exemple : tu as tout dans le répertoire /monProjet
C'est à dire que tu aurais (si j'ai bien compris) /monProjet/monPackage/app.java et /monProjet/printer.java, dans ce cas tu devrais aller dans le répertoire /monProjet et avoir cette commande :
C:\...\monProjet > "C:\Program Files\Java\jdk1.6.0_12\bin\javac.exe" monPackage/app.java
Mais ça ne règlera pas ton problème, et comme ça je ne vois pas de manière de le résoudre simplement avec un import, alors on peux toujours faire appel au classpath ou à un ClassLoader mais c'est pénible, c'est aussi pour ça qu'il faudrait toujours mettre des classes dans un package !
PS. JDK 1.6.0_12 c'est assez ancien comme JDK, il faudrait se mettre à jour !!!