1

ソナーからのこのバグに関連して:http: //jira.codehaus.org/browse/SONAR-1865

そしてこれ(上記のものを相互参照します):http: //jira.codehaus.org/browse/SONAR-1637

私はまだこの問題を見ています。

Sonarサーバーバージョン2.12を使用しています。
Hudsonバージョン2.2.0を使用しています。
SonarプラグインをHudsonバージョン1.7.2にインストールしました。

そして、最も重要なのは、SonarサーバーにFlexプラグインがインストールされていることです。Flexプラグインのバージョンは0.4です。

mvn sonar:sonar -Pflexフレックスプロジェクトで実行すると、スタックトレースで次のエラーが発生します。

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)

これが私のクラスがどのように見えるか、それが不平を言っていることです:

これはActionscriptクラス、ファイル名です: EntityEnums$ReportParameterName.as。GraniteDSを使用してJavaからActionscriptに自動生成されました。

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();
        }
   }
}

したがって、バグレポートによると、これは私が持っている以前のバージョンのSonarで修正されています。しかし、バージョン2.12ではまだ表示されています。また、これがflex / actionscriptクラスである場合、エラーに「java内部クラス...」と表示されるのはなぜですか?誰かがまだこのバグの振る舞いを見ていますか?

4

1 に答える 1

1

この問題はSonarFlexプラグイン側(http://jira.codehaus.org/browse/SONARPLUGINS-1623)で作成されており、おそらく次のリリースで修正される予定です。

于 2012-01-18T10:41:30.683 に答える