Sonar and Flexプラグイン-Dollars($)はJavaクラス名では受け入れられません
-
29-10-2019 - |
質問
ソナーからのこのバグに関して:http://jira.codehaus.org/browse/sonar-1865
そして、これは(上記のものを参照しています):http://jira.codehaus.org/browse/sonar-1637
私はまだこの問題を見ています。
Sonar Serverバージョン2.12を使用しています。
ハドソン、バージョン2.2.0を使用しています。
ハドソンのソナープラグインをバージョン1.7.2にインストールしました。
そして、最も重要なことは、SonarサーバーにFlexプラグインがインストールされていることです。フレックスプラグインバージョンは0.4です。
走るとき mvn sonar:sonar -Pflex
Flexプロジェクトでは、このエラーがスタックトレースで取得されます。
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();
}
}
}
したがって、バグの報告によると、これは私が持っているソナーの以前のバージョンで修正されています。しかし、私はまだバージョン2.12でそれを見ています。そして、なぜエラーは「Javaインナークラス...」を表示するのでしょうか?これがFlex/ActionScriptクラスであるのですか?誰かがまだこのバグの動作を見ていますか?
正しい解決策はありません
所属していません StackOverflow