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

Qualimétrie Discussion :

Problème d'encodage


Sujet :

Qualimétrie

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 16
    Points : 15
    Points
    15
    Par défaut Problème d'encodage
    Bonjour,

    j'ai un problème d'encodage de caractères qui m'empêche d'utiliser Sonar. L'ensemble de mes sources sont supposées être en UTF-8. J'ai donc configuré Checkstyle, PMD, Cobertura pour qu'ils fonctionnent en UTF-8.

    Système : Windows XP
    Maven 2.0.9
    Archiva 1.2
    Sonar 1.9.2 avec base de données intégrée

    Commande Maven exécutée à partir d'une fenêtre "cmd" Windows qui utilise l'encodage Cp1252 :
    mvn sonar:sonar -Pprod -e

    Voici l'erreur que j'obtiens :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    [INFO] Cobertura Report generation was successful.
    [INFO] MonProjet Executing org.apache.maven.plugins:maven-surefire-plugin:[]
    [INFO] MonProjet [class org.sonar.plugins.pmd.PmdMavenCollector] executing
    [INFO] MonProjet [class org.sonar.plugins.squid.SquidMavenCollector] executing
    [INFO] MonProjet Starting audit...
    [INFO] MonProjet Audit done.
    [ERROR] MonProjet D:\MonProjet\fichier.java:709:35: Exception lev?e : expecting ''', found '?'
    [INFO] ------------------------------------------------------------------------
    [ERROR] BUILD ERROR
    [INFO] ------------------------------------------------------------------------
    [INFO] Can not execute Sonar
    
    Embedded error: Exception levÚe : expecting ''', found '®'
    [INFO] ------------------------------------------------------------------------
    [INFO] Trace
    org.apache.maven.lifecycle.LifecycleExecutionException: Can not execute Sonar
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:583)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:512)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:482)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:330)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:227)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142)
            at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336)
            at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129)
            at org.apache.maven.cli.MavenCli.main(MavenCli.java:287)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:585)
            at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
            at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
            at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
            at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
    Caused by: org.apache.maven.plugin.MojoExecutionException: Can not execute Sonar
            at org.codehaus.mojo.sonar.Bootstraper.executeMojo(Bootstraper.java:87)
            at org.codehaus.mojo.sonar.Bootstraper.start(Bootstraper.java:65)
            at org.codehaus.mojo.sonar.SonarMojo.execute(SonarMojo.java:117)
            at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:451)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:558)
            ... 16 more
    Caused by: org.sonar.squid.AnalysisException: Exception levÚe : expecting ''', found '®'
            at org.sonar.squid.handlers.JavaCheckstyleHandler$ErrorsListener.addError(JavaCheckstyleHandler.java:124)
            at com.puppycrawl.tools.checkstyle.Checker.fireErrors(Checker.java:485)
            at com.puppycrawl.tools.checkstyle.api.AbstractFileSetCheck.fireErrors(AbstractFileSetCheck.java:189)
            at com.puppycrawl.tools.checkstyle.TreeWalker.process(TreeWalker.java:337)
            at com.puppycrawl.tools.checkstyle.TreeWalker.process(TreeWalker.java:590)
            at com.puppycrawl.tools.checkstyle.Checker.process(Checker.java:239)
            at org.sonar.squid.handlers.JavaCheckstyleHandler.launchCheckstyleEngine(JavaCheckstyleHandler.java:66)
            at org.sonar.squid.handlers.JavaCheckstyleHandler.analyzeSources(JavaCheckstyleHandler.java:187)
            at org.sonar.squid.Squid.analyze(Squid.java:65)
            at org.sonar.squid.Squid.analyze(Squid.java:60)
            at org.sonar.plugins.squid.SquidMavenCollector.collect(SquidMavenCollector.java:85)
            at org.sonar.mojo.InternalMojo.executeCollectors(InternalMojo.java:294)
            at org.sonar.mojo.InternalMojo.processModules(InternalMojo.java:176)
            at org.sonar.mojo.InternalMojo.execute(InternalMojo.java:160)
            at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:451)
            at org.codehaus.mojo.sonar.Bootstraper.executeMojo(Bootstraper.java:82)
            ... 20 more
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 52 seconds
    [INFO] Finished at: Wed Jun 24 11:15:40 CEST 2009
    [INFO] Final Memory: 25M/46M
    [INFO] ------------------------------------------------------------------------
    Le " ' " correspond à un " é " dans le code.

    Pour information, sous Sonar 1.7, ça me donne ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    [INFO] [javancss:report]
    TokenMgrError in D:\MonProjet\fichier.java
    Lexical error at line 709, column 35.  Encountered: "\u00a9" (169), after : "\'\u00c3"
    
    
    [INFO] ------------------------------------------------------------------------
    [ERROR] BUILD ERROR
    [INFO] ------------------------------------------------------------------------
    [INFO] Cannot execute the command org.codehaus.mojo:javancss-maven-plugin::report
    
    Embedded error: An error has occurred in JavaNCSS Report report generation.
    Lexical error at line 709, column 35.  Encountered: "\u00a9" (169), after : "\'\u00c3"
    [INFO] ------------------------------------------------------------------------
    [INFO] Trace
    org.apache.maven.lifecycle.LifecycleExecutionException: Cannot execute the command org.codehaus.mojo:javancss-maven-plugin::report
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:583)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:512)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:482)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:330)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:227)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142)
            at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336)
            at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129)
            at org.apache.maven.cli.MavenCli.main(MavenCli.java:287)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:585)
            at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
            at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
            at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
            at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
    Caused by: org.apache.maven.plugin.MojoExecutionException: Cannot execute the command org.codehaus.mojo:javancss-maven-plugin::report
            at org.sonar.maven.SonarMojo.executeMaven(SonarMojo.java:294)
            at org.sonar.maven.SonarMojo.executeGoals(SonarMojo.java:256)
            at org.sonar.maven.SonarMojo.execute(SonarMojo.java:115)
            at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:451)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:558)
            ... 16 more
    Caused by: org.apache.maven.lifecycle.LifecycleExecutionException: An error has occurred in JavaNCSS Report report generation.
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:583)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:512)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:482)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:330)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:291)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142)
            at org.sonar.maven.SonarMavenEmbedder.execute(SonarMavenEmbedder.java:151)
            at org.sonar.maven.SonarMavenEmbedder.execute(SonarMavenEmbedder.java:115)
            at org.sonar.maven.SonarMojo.executeMaven(SonarMojo.java:291)
            ... 20 more
    Caused by: org.apache.maven.plugin.MojoExecutionException: An error has occurred in JavaNCSS Report report generation.
            at org.apache.maven.reporting.AbstractMavenReport.execute(AbstractMavenReport.java:79)
            at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:451)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:558)
            ... 28 more
    Caused by: org.apache.maven.reporting.MavenReportException: Error while JavaNCSS was executing
            at org.codehaus.mojo.javancss.NcssExecuter.execute(NcssExecuter.java:94)
            at org.codehaus.mojo.javancss.NcssReportMojo.generateSingleReport(NcssReportMojo.java:245)
            at org.codehaus.mojo.javancss.NcssReportMojo.executeReport(NcssReportMojo.java:166)
            at org.apache.maven.reporting.AbstractMavenReport.generate(AbstractMavenReport.java:98)
            at org.apache.maven.reporting.AbstractMavenReport.execute(AbstractMavenReport.java:73)
            ... 30 more
    Caused by: java.lang.Exception: javancss.TokenMgrError: Lexical error at line 709, column 35.  Encountered: "\u00a9" (169), after : "\'\u00c3"
            ... 35 more
    Caused by: javancss.TokenMgrError: Lexical error at line 709, column 35.  Encountered: "\u00a9" (169), after : "\'\u00c3"
            at javancss.JavaParserTokenManager.getNextToken(JavaParserTokenManager.java:1784)
            at javancss.JavaParser.jj_scan_token(JavaParser.java:9647)
            at javancss.JavaParser.jj_3R_184(JavaParser.java:6838)
            at javancss.JavaParser.jj_3R_167(JavaParser.java:7217)
            at javancss.JavaParser.jj_3R_141(JavaParser.java:7194)
            at javancss.JavaParser.jj_3R_95(JavaParser.java:7253)
            at javancss.JavaParser.jj_3R_176(JavaParser.java:8164)
            at javancss.JavaParser.jj_3R_152(JavaParser.java:8250)
            at javancss.JavaParser.jj_3R_107(JavaParser.java:8242)
            at javancss.JavaParser.jj_3R_195(JavaParser.java:6608)
            at javancss.JavaParser.jj_3R_185(JavaParser.java:6623)
            at javancss.JavaParser.jj_3R_175(JavaParser.java:6648)
            at javancss.JavaParser.jj_3R_149(JavaParser.java:6894)
            at javancss.JavaParser.jj_3R_103(JavaParser.java:7035)
            at javancss.JavaParser.jj_3_29(JavaParser.java:7167)
            at javancss.JavaParser.jj_3R_95(JavaParser.java:7257)
            at javancss.JavaParser.jj_3_23(JavaParser.java:8158)
            at javancss.JavaParser.jj_2_23(JavaParser.java:5685)
            at javancss.JavaParser.Expression(JavaParser.java:2525)
            at javancss.JavaParser.StatementExpression(JavaParser.java:3829)
            at javancss.JavaParser.Statement(JavaParser.java:3518)
            at javancss.JavaParser.BlockStatement(JavaParser.java:3707)
            at javancss.JavaParser.Block(JavaParser.java:3657)
            at javancss.JavaParser.Statement(JavaParser.java:3488)
            at javancss.JavaParser.IfStatement(JavaParser.java:3963)
            at javancss.JavaParser.Statement(JavaParser.java:3526)
            at javancss.JavaParser.BlockStatement(JavaParser.java:3707)
            at javancss.JavaParser.Block(JavaParser.java:3657)
            at javancss.JavaParser.Statement(JavaParser.java:3488)
            at javancss.JavaParser.IfStatement(JavaParser.java:3963)
            at javancss.JavaParser.Statement(JavaParser.java:3526)
            at javancss.JavaParser.BlockStatement(JavaParser.java:3707)
            at javancss.JavaParser.Block(JavaParser.java:3657)
            at javancss.JavaParser.MethodDeclaration(JavaParser.java:1841)
            at javancss.JavaParser.ClassBodyDeclaration(JavaParser.java:975)
            at javancss.JavaParser.ClassBody(JavaParser.java:846)
            at javancss.JavaParser.UnmodifiedClassDeclaration(JavaParser.java:775)
            at javancss.JavaParser.ClassDeclaration(JavaParser.java:706)
            at javancss.JavaParser.TypeDeclaration(JavaParser.java:567)
            at javancss.JavaParser.CompilationUnit(JavaParser.java:300)
            at javancss.Javancss._measureSource(Javancss.java:190)
            at javancss.Javancss._measureSource(Javancss.java:155)
            at javancss.Javancss._measureFiles(Javancss.java:282)
            at javancss.Javancss._measureRoot(Javancss.java:308)
            at javancss.Javancss.<init>(Javancss.java:604)
            at org.codehaus.mojo.javancss.NcssExecuter.execute(NcssExecuter.java:90)
            ... 34 more
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 2 minutes 25 seconds
    [INFO] Finished at: Wed Jun 24 14:32:38 CEST 2009
    [INFO] Final Memory: 7M/29M
    [INFO] ------------------------------------------------------------------------
    Toute idée serait bienvenue !

    Merci d'avance

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 16
    Points : 15
    Points
    15
    Par défaut
    Apparemment, en changeant un 'é' par "é" dans le fichier java incriminé, ça fonctionne. Mais ça ne me semble pas être le meilleur moyen de résoudre le problème

  3. #3
    Nouveau membre du Club
    Inscrit en
    Novembre 2004
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 53
    Points : 34
    Points
    34
    Par défaut
    bonjour je rencontre le même exactement le même problème. Avez vous trouver une solution ?

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 16
    Points : 15
    Points
    15
    Par défaut
    Je sais juste pour le moment que c'est un problème de checkstyle. Il fait la même erreur en standalone. La solution adoptée pour le moment à été de changer 'é' en "é". Mais elle n'est pas convenable.

    En standalone, j'ai pu résoudre le problème en ajoutant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <module name="Checker">
    <property name="charset" value="UTF-8"/>
    dans le fichier de règles checkstyle.

    J'essaye actuellement de faire passer ce type de configuration dans Sonar.

    PS: j'ai mis l'option UTF-8 dans les déclarations de checkstyle sous Maven, ça semble le prendre en compte à certains moments, mais pas à tous.

  5. #5
    Nouveau membre du Club
    Inscrit en
    Novembre 2004
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 53
    Points : 34
    Points
    34
    Par défaut
    ok merci pour cette réponse. En fait ce n'est pas exactement le même problème (mais ça y ressemble). Je suis en train de mettre Sonar en place pour donner des indications aux projets sur la qualité de leur code. Petit soucis, je me rend compte que des "é" trainent dans les fichiers sources java et c'est le passage du plugin cobertura qui plante sonar. Peut t'on changer l'encodage en ISO avec une option au niveau de maven ou des plugins ?

    Petite question par rapport à cette derniere, Sonar prend t'il en compte les informations de configuration que l'ont peut mettre dans le pom concernant les differents plugins (pmd, checkstyle, ect). Il me semblait que non !!

  6. #6
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Points : 7 275
    Points
    7 275
    Par défaut
    Citation Envoyé par bouliz Voir le message
    Petite question par rapport à cette derniere, Sonar prend t'il en compte les informations de configuration que l'ont peut mettre dans le pom concernant les differents plugins (pmd, checkstyle, ect). Il me semblait que non !!
    Normalement si. Après, il faut faire attention aux versions utilisées des plugins PMD, Checkstyle, etc.
    Le mieux, c'est d'aller dans target/sonar/ et regarder le sonar-pom.xml. Il s'agit du pom.xml utilisé par Sonar sur ton projet (c'est-à-dire ton pom.xml customisé par Sonar pour ses besoins). Tu pourras ainsi avoir toutes les informations que tu souhaites...
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

Discussions similaires

  1. [CSV] Problème d'encodage
    Par simoryl dans le forum Langage
    Réponses: 13
    Dernier message: 18/04/2012, 15h20
  2. Problème d'encodage avec Python
    Par tse_tilky_moje_imja dans le forum Général Python
    Réponses: 2
    Dernier message: 22/02/2006, 14h36
  3. Problème d'encodage en Unicode
    Par Skreo dans le forum Entrée/Sortie
    Réponses: 5
    Dernier message: 28/12/2005, 10h43
  4. Problème d'encodage sur MySql 4.1
    Par Blanchet dans le forum Outils
    Réponses: 1
    Dernier message: 04/12/2005, 04h53
  5. [XML::PARSER] Problème d'encodage
    Par frangin2003 dans le forum Modules
    Réponses: 13
    Dernier message: 05/09/2005, 14h59

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