Jazz リポジトリから非難情報を取得しようとしています。プロジェクトをgradleで構築しており、SonarQubeで分析したいと考えています。ただし、SonarRunner の scm アクティビティ プラグインには次の例外があります。
11:27:46.253 WARN - Fail to retrieve SCM info of: C:\Users\path\to\source\file. Reason: Error code for Jazz SCM blame command - 47
Problem running 'annotate':
The URI to the repository that has the following UUID cannot be determined: [UUID]. The following workspaces are loaded from that repository: My Workspace. If you know the repository URI, run the lscm login command and specify the repository URI.
scm cli ツールを使用して、手動で URI を確認済みです。実際、構成で定義したことがないため、UUIDがどこから来たのかわかりません。ワークスペースへの URI のみ。
build.gradle の SonarQube 設定は次のようになります。
sonarRunner {
//config parameters not needed for default localhost sonar installation
sonarProperties {
property "sonar.host.url", "https://myserver:9999"
property "sonar.jdbc.url", "jdbc:postgresql://myserver/sonar"
property "sonar.jdbc.driverClassName", "org.postgresql.Driver"
property "sonar.jdbc.username", "sonar"
property "sonar.jdbc.password", "sonar"
}
}
tasks.sonarRunner.dependsOn = [] // workaround for defect http://issues.gradle.org//browse/GRADLE-2749
tasks.sonarRunner.mustRunAfter {
subprojects.collect { project ->
project.tasks.withType(Test)
}
}
subprojects {
sonarRunner {
sonarProperties {
property "sonar.sourceEncoding", "UTF-8"
property "sonar.core.codeCoveragePlugin", "jacoco"
property "sonar.jacoco.reportPath", "${buildDir}/jacoco/report.exec"
property "sonar.scm.url" , "scm:jazz:https://myjazzserver:9444/jazz:My Workspace"
}
}
}
Jazz のユーザー名とパスワードは sonar で定義されています。
lscm.bat
scm を取得する前に、ログインするタスクを既に作成しようとしました。これにより、ユーザーが既にログインしているという例外のみが発生しました。また、ユーザー名とパスワードを scm url に入れようとしましたが、これにより次の例外が発生しました。
Exception in thread "Thread-21" java.lang.LinkageError: org.codehaus.plexus.util.IOUtil
at java.lang.ClassLoader.defineClassImpl(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:306)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:143)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:700)
at java.net.URLClassLoader.access$400(URLClassLoader.java:81)
at java.net.URLClassLoader$ClassFinder.run(URLClassLoader.java:1148)
at java.security.AccessController.doPrivileged(AccessController.java:366)
at java.net.URLClassLoader.findClass(URLClassLoader.java:583)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClassFromSelf(ClassRealm.java:389)
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:42)
at org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass(ClassRealm.java:259)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:235)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:227)
at org.codehaus.plexus.util.cli.StreamPumper.run(StreamPumper.java:157)
そして、この例外では行き詰まります。
ツールのバージョンは次のとおりです: RTC: 4.0.2 Gradle: 1.9 SonarQube: 4.3.2 SCM Activity: 1.8
誰かが私が間違っていることを知っていますか?