2016-10-21 2 views
6

ための「IllegalStateExceptionがファイルやディレクトリはありませんマッチング」私は最近、私のGradleはSonarQubeプラグイン2.2に構築アップグレードしようとしたと、次のエラーが発生しました::非既存のJAR

Caused by: java.lang.IllegalStateException: No files nor directories matching '[/opt/bamboo-home/xml-data/build-dir/SPR-SONAR-JOB1/spring-core/build/libs/spring-cglib-repack-3.2.4.jar' in directory /opt/bamboo-home/xml-data/build-dir/SPR-SONAR-JOB1/spring-aop 
org.sonar.batch.scan.ProjectReactorBuilder.validateDirectories(ProjectReactorBuilder.java:302) 
org.sonar.batch.scan.ProjectReactorBuilder.loadChildProject(ProjectReactorBuilder.java:217) 
org.sonar.batch.scan.ProjectReactorBuilder.defineChildren(ProjectReactorBuilder.java:192) 
org.sonar.batch.scan.ProjectReactorBuilder.execute(ProjectReactorBuilder.java:116) 
org.sonar.batch.scan.ProjectScanContainer.projectBootstrap(ProjectScanContainer.java:120) 
org.sonar.batch.scan.ProjectScanContainer.doBeforeStart(ProjectScanContainer.java:98) 
org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:91) 
org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:78) 
org.sonar.batch.scan.ScanTask.scan(ScanTask.java:64) 
org.sonar.batch.scan.ScanTask.execute(ScanTask.java:51) 
org.sonar.batch.bootstrap.TaskContainer.doAfterStart(TaskContainer.java:125) 
org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:93) 
org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:78) 
org.sonar.batch.bootstrap.BootstrapContainer.executeTask(BootstrapContainer.java:173) 
org.sonar.batch.bootstrapper.Batch.executeTask(Batch.java:95) 
org.sonar.batch.bootstrapper.Batch.execute(Batch.java:67) 
org.sonarsource.scanner.api.internal.batch.BatchIsolatedLauncher.executeOldVersion(BatchIsolatedLauncher.java:70) 
org.sonarsource.scanner.api.internal.IsolatedLauncherProxy.invoke(IsolatedLauncherProxy.java:60) 
com.sun.proxy.$Proxy77.executeOldVersion(Unknown Source) 
org.sonarsource.scanner.api.EmbeddedScanner.doExecute(EmbeddedScanner.java:238) 
org.sonarsource.scanner.api.EmbeddedScanner.runAnalysis(EmbeddedScanner.java:151) 
org.sonarqube.gradle.SonarQubeTask.run(SonarQubeTask.java:93) 

このspring-cglib-repack-3.2.4.jarspring-core/build/libs/フォルダに存在しません私のビルドはrepackaging the cglib dependencyで、custom jarjar taskです。

プラグインがそのリソースをspring-aopフォルダの下に探しているようですので、例外です。

同じ構成が2.1バージョンで動作することに注意してください。

+0

同じ問題がパスを入れていましたここに。解決策はありますか? – dit

+0

ファイルが見つからないのはなぜですか?私が理解しているところでは、いくつかの追加のJARファイルを動的に生成し、それらをコンパイルクラスパスに追加しています。 SonarQubeは、これらのJARが分析を実行するために必要です。あなたが指摘したチケットは、それとは逆の動作をします。存在しないファイルをフィルタリングします。だから私はそれが2.1で動作し、2.2では動作しないことに驚いている。 –

+0

ちょうどチェックアウトマスターにテストされています。 ./gradlew sonarqubeはうまく動作します。 2.2にアップデートしても正常に動作します。フォルダ 'spring-core/build/libs /'を見ると、JARが存在します。 –

答えて

4

この問題を解決するためのプルリクエストが提出されました。私は、チケットを作成しているとバグ修正をリリースします: https://jira.sonarsource.com/browse/SONARGRADL-30

+0

[複数の質問と同じ回答を投稿しない](https://meta.stackexchange.com/q/104227)をお願いします。 1つの良い答えを投稿し、投票/フラグを立てて他の質問を重複として閉じます。質問が重複でない場合は、*あなたの質問に対する答えを調整してください。 –

0

私はクラスファイルに

sonar.java.binaries=target/ 

sonar-project.properties

ソナーバージョン6.2

+0

sonar.java.binariesを設定するだけでなく、絶対パスに設定して動作させる必要がありました。 – pacoverflow

関連する問題