IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

[ Newbie ] Erreur de compilation d'un tout petit projet


Sujet :

avec Java

  1. #1
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 786
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 786
    Points : 15 194
    Points
    15 194
    Par défaut [ Newbie ] Erreur de compilation d'un tout petit projet
    Bonjour,

    Je suis totalement newbie en Java mais je me débrouille bien ailleurs, et comme je suis tombé sur le code d'un outil qui m'intéresse, je me suis dit "pourquoi pas ? Si je dois y modifier quelque chose, ça sera plus facile" et donc j'ai récupéré le code sur le site (mis à jour il y a 2 mois), lui ai préparé un joli dossier dans ma machine, l'ai enregistré, ai préparé un dossier Manifest pompé ailleurs et en avant, javacc player.java et bim bam boum :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    org.javacc.parser.ParseException: Encountered " "import" "import "" at line 3, column 1.
    Was expecting:
        "PARSER_BEGIN" ...
    Le bout de code concerné (c'est au tout début, si je lis bien) :
    Nom : java_compil-error.png
Affichages : 335
Taille : 86,9 Ko

    Je ne vois vraiment pas où se cache cette string avec double "import", c'est pourquoi je fais appel à vous.

    Tout le code (env. 300 lignes, c'est un player audio) est là : https://www.geeksforgeeks.org/play-a...le-using-java/.

    Merci pour le coup de main car face à ça, je ne sais vraiment pas quoi faire...
    Merci,
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 554
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 554
    Points : 21 613
    Points
    21 613
    Par défaut
    Hello,

    pas javacc, javac avec un seul c !

    Comment tu peux avoir javacc installé sur ta machine et pas être au courant de ce que c'est ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 786
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 786
    Points : 15 194
    Points
    15 194
    Par défaut
    Citation Envoyé par thelvin Voir le message
    pas javacc, javac avec un seul c !

    Comment tu peux avoir javacc installé sur ta machine et pas être au courant de ce que c'est ?
    Parce que mon gestionnaire de paquets (de programmes) ne connait pas avec un seul "c", mais connait avec 2 et moi j'ai bêtement pensé que puisqu'il y avait 2 "c", peut-être que cette version en ferait 2 fois plus ?
    Nom : javacc.png
Affichages : 288
Taille : 25,5 Ko

    Bon, je me suis planté, et comme je n'ai pas la version avec un seul "c", je propose qu'on laisse tomber, je vais voir du côté de Python, je viens de faire des essais qui fonctionnent.
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  4. #4
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 845
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 845
    Points : 22 858
    Points
    22 858
    Billets dans le blog
    51
    Par défaut
    Le compilateur javac est un outil qui fait partie intégrateur du JDK (Java Development Kit) et n'est pas fourni en standalone.
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  5. #5
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 786
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 786
    Points : 15 194
    Points
    15 194
    Par défaut
    Citation Envoyé par bouye Voir le message
    Le compilateur javac est un outil qui fait partie intégrateur du JDK (Java Development Kit) et n'est pas fourni en standalone.
    Et pas fourni non plus par ma distro, à moins qu'il ne fasse partie d'un paquet, mais comment savoir ?
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  6. #6
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 845
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 845
    Points : 22 858
    Points
    22 858
    Billets dans le blog
    51
    Par défaut
    Tu as rien précisé mais tu sembles utiliser Debian d’après les icones de ton gestionnaire de packages. As-tu cherché java ou openjdk ?

    Il y a plusieurs vendeurs*, mais alternativement, le plus simple est d'aller chercher directement un binaire chez l'OpenJDK (si tu optes pour les binaires d'Oracle, rester sur les binaires OpenJDK qui sont en GPL, me pas utiliser les binaires sous license Oracle). Et ensuite tu mets le répertoire de base du JDK dans la variable JAVA_HOME et puis tu rajoutes $JAVA_HOME/bin dans ton PATH.

    *Ex: LibericaJDK par Bellsoft.
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  7. #7
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 786
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 786
    Points : 15 194
    Points
    15 194
    Par défaut
    Bonjour,
    Citation Envoyé par bouye Voir le message
    mais tu sembles utiliser Debian d’après les icones de ton gestionnaire de packages.
    Bien vu !

    Citation Envoyé par bouye Voir le message
    As-tu cherché java ou openjdk ?
    Voilà qui est fait, et dans aucun cas je ne trouve de javac avec un seul "c".

    Citation Envoyé par bouye Voir le message
    Et ensuite tu mets le répertoire de base du JDK dans la variable JAVA_HOME et puis tu rajoutes $JAVA_HOME/bin dans ton PATH.
    Tu veux rire, de bon matin ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $ echo $JAVA_HOME
    (vide)
    On dirait du Python, que j'ai effleuré il y a deux jours, et que j'ai vite abandonné : de tous les exemples que j'ai trouvés sur le web, il n"y en a que 1 sur 20 qui fonctionne, et même ici, sur dvlp, on voit des trucs, des fois, on se demande...
    Citation Envoyé par ludovic787 Voir le message
    Pour mon code, il fonctionne très bien sous python 3.8 mais plus sous python 3.10.
    Des outils comme ça, moi, je pars en courant.

    Merci pour le coup de main mais j'abandonne ce truc, c'était juste pour voir si ça fonctionnerait, et ça ne veut pas ? Alors je passe mon chemin,
    Bonne journée, bonne semaine, et puisque tu es modo, si tu veux, tu peux supprimer toute cette discussion, qui n'a aucun intérêt à être conservée jusqu'à la fin des temps,
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  8. #8
    Expert éminent sénior Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 569
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 569
    Points : 15 525
    Points
    15 525
    Par défaut
    Enfin la c'est un peu dur d'accuser Java d'être un mauvais outil. Là, c'est surtout ta distribution qui l'as packagé de manière pas évidente.

  9. #9
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 554
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 554
    Points : 21 613
    Points
    21 613
    Par défaut
    Même pas. C'est une réaction de joueur de jeu vidéo, qui a envie de lancer une partie pas de s'intéresser à des trucs techniques.

    On installe Java dans le but de faire de la programmation, c'est pas inenvisageable de se renseigner un peu avec une ou deux recherches Google sur la manière dont une distribution a prévu d'installer l'environnement de développement nécessaire.

    En particulier pas dans le cas de Java dont il est coutume de devoir gérer un certain nombre de problématiques, comme avoir plusieurs versions installées à la fois et être capable de changer facilement de version par défaut.
    Il y a des installeurs automatiques pour Windows et MacOS aussi, mais le cas particulier de Java les amène à l'installer de manière qu'il faut vérifier, et même si c'est nécessaire c'est quand même pas compliqué.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  10. #10
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 786
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 786
    Points : 15 194
    Points
    15 194
    Par défaut
    Citation Envoyé par thelvin Voir le message
    Même pas. C'est une réaction de joueur de jeu vidéo, qui a envie de lancer une partie pas de s'intéresser à des trucs techniques.
    Même pas ! Je ne joue jamais aux jeux vidéo, je n'en ai pas et je ne veux pas en entendre parler.
    Les seuls jeux que je pratique, quand j'ai le temps (c-à-d quasiment jamais), c'est le Solitaire pour faire marcher ma mémoire et Sokoban pour la logique.

    Et ça fait bien 65 ans que je m'intéresse aux trucs techniques.

    Non, en fait, Java est toujours fourni avec les distros et je n'ai pas galéré autant avec la précédente machine (9 ans d'âge) où il y avait javacc mais ne me demandez pas comment il y était, fourni ou installé, je ne m'en souviens absolument pas.
    Le plus rigolo, c'est que je viens à l'instant de faire une recherche "debian javacc" et le web remonte des choses, il existe un paquet disponible et installable, alors pourquoi le gestionnaire de paquets de ma machine ne me l'a pas trouvé ?
    Bah...
    Comme je dis souvent (et de plus en plus depuis deux ans), Debian ça se déglingue...

    Bon, j'avais suggéré de supprimer cette discussion, elle a juste été déplacée... De mon côté, je laisse Java aux spécialistes et je retourne à mon bon vieux Pascal avec qui je peux à peu près tout faire,
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  11. #11
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 845
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 845
    Points : 22 858
    Points
    22 858
    Billets dans le blog
    51
    Par défaut
    Citation Envoyé par Jipété Voir le message
    Le plus rigolo, c'est que je viens à l'instant de faire une recherche "debian javacc" [...]
    Citation Envoyé par thelvin Voir le message
    pas javacc, javac avec un seul c !
    Les solutions par packages et manuelles ont été données, pas la peine de troller plus en avant.
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  12. #12
    Expert éminent sénior Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 569
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 569
    Points : 15 525
    Points
    15 525
    Par défaut
    Citation Envoyé par thelvin Voir le message
    Même pas. C'est une réaction de joueur de jeu vidéo, qui a envie de lancer une partie pas de s'intéresser à des trucs techniques.
    En soi ça n'est pas un problème. Tout le monde n'a pas les même ambitions quand il programme et c'est parfaitement entendable de vouloir quelque chose de simple a prendre en main sans avoir envie de plonger dans les détails. Et il est vrai que certains langages comme le C ou le Perl qui sont des composant centraux des distributions Linux ont toujours été assez bien intégré. Mettre en place Java n'est pas toujours aussi simple. Dans le cas présent, le problème revient entièrement à une mauvaise utilisation du système de package de la distribution, on peut déplorer que le système de package de Debian n'est pas assez intuitif. Par contre, ça n'a rien a voir avec le langage Java en lui même.

    Citation Envoyé par Jipété Voir le message
    Le plus rigolo, c'est que je viens à l'instant de faire une recherche "debian javacc" et le web remonte des choses, il existe un paquet disponible et installable, alors pourquoi le gestionnaire de paquets de ma machine ne me l'a pas trouvé ?
    Pourquoi il n'est pas proposé à l’installation sur ta machine ? Ca dépend probablement de la configuration de ton gestionnaire de dépôt. javacc n'est pas un package habituel, il n'est peut-être pas dans les dépôts disponibles de base. Mais peu importe, javacc n'est de toute façon pas le package dont tu as besoin.

    Si tu prends la peine de lire la description du dépôt que tu donnes en lien, tu verras que ça confirme complétement ce qu'on te dit : javacc n'est pas un compilateur java. C'est juste un générateur d’analyseur syntaxique : un outil qui permet d'écrire automatiquement le code de la partie analyse syntaxique d'un compilateur. C'est un équivalent à ce que fait yacc pour le C. Il compile un fichier décrivant la grammaire d'un langage en un code Java capable d'en effectuer l'analyse syntaxique.
    Du coup le message d'erreur de ton premier post est facile a expliquer : javacc s'attend a lire un fichier de grammaire qui commence avec un "PARSER_BEGIN" et tu lui donnes du code Java qui commence avec un "import".

    Le paquet que tu recherchais est probablement "openjdk-11-jdk" ou "openjdk-17-jdk" en fonction de la version de java que tu vises et si ta version de Debian est assez récente.

Discussions similaires

  1. [Android] Quel outil de développement pour un (tout) petit projet ? Android Studio surdimensionné ?
    Par Michel RIAZUELO dans le forum Mon application mobile
    Réponses: 5
    Dernier message: 05/01/2016, 07h57
  2. Temp de compilation énorme pour un petit projet
    Par aoutch dans le forum Visual Studio
    Réponses: 14
    Dernier message: 07/09/2010, 15h19
  3. petite erreur de compilation
    Par flamant dans le forum Hibernate
    Réponses: 6
    Dernier message: 17/09/2007, 09h29
  4. Une toute petite erreur..
    Par lelo108 dans le forum C
    Réponses: 6
    Dernier message: 06/01/2007, 12h23
  5. [PL/SQL] voir toutes les erreurs à la compilation
    Par ciol2.6.12 dans le forum Oracle
    Réponses: 2
    Dernier message: 14/04/2006, 18h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo