Plugin Sonar et Flex - Les dollars ($) ne sont pas acceptés dans les noms de classe Java
-
29-10-2019 - |
Question
En référence à ce bug de Sonar:http://jira.codehaus.org/browse/sonar-1865
et celui-ci (qui croix fait référence à celui ci-dessus):http://jira.codehaus.org/browse/sonar-1637
Je vois toujours ce problème.
J'utilise la version 2.12 du serveur Sonar.
J'utilise Hudson, version 2.2.0.
J'ai installé le plugin Sonar dans Hudson, version 1.7.2.
Et, plus important encore, j'ai le plugin Flex installé dans le serveur Sonar. La version du plugin Flex est de 0,4.
Quand je cours mvn sonar:sonar -Pflex
Sur un projet Flex, j'obtiens cette erreur dans la trace de pile:
Caused by: java.lang.IllegalArgumentException: Java inner classes are not supported : EntityEnums$ReportParameterName
at org.sonar.plugins.flex.FlexFile.<init>(FlexFile.java:79)
at org.sonar.plugins.flex.FlexFile.fromIOFile(FlexFile.java:165)
at org.sonar.plugins.flex.FlexSourceImporter.createResource(FlexSourceImporter.java:37)
at org.sonar.api.batch.AbstractSourceImporter.parseDirs(AbstractSourceImporter.java:75)
at org.sonar.api.batch.AbstractSourceImporter.analyse(AbstractSourceImporter.java:69)
at org.sonar.api.batch.AbstractSourceImporter.analyse(AbstractSourceImporter.java:60)
at org.sonar.batch.phases.SensorsExecutor.execute(SensorsExecutor.java:64)
Voici à quoi ressemble ma classe, dont il se plaint:
Ceci est une classe ActionScript, nom de fichier: EntityEnums$ReportParameterName.as
. Il a été généré automatiquement de Java à ActionScript à l'aide de granimés.
package com.digabit.core.db.entity.util {
[Bindable]
public class EntityEnums$ReportParameterName {
public static const tnid:String = "tnid";
public static const uname:String = "uname";
public static const lc:String = "lc";
public static const tnkey:String = "tnkey";
public static const oid:String = "oid";
public function EntityEnums$ReportParameterName()
{
super();
}
}
}
Ainsi, selon les rapports de bogues, cela a été corrigé dans une version antérieure de Sonar que j'ai; Mais je le vois toujours dans la version 2.12. Et pourquoi l'erreur afficherait-elle "Java Inner Classes ..." quand il s'agit d'une classe Flex / ActionScript? Quelqu'un voit-il encore ce comportement de bug?
Pas de solution correcte