2011-07-15 31 views
0

我正在使用Sonar新版本的Ant build connectint to Hudson。Ant構建通行證但聲納構建失敗!

我在控制檯中得到以下錯誤。

構建獲得成功,但最終它會給maven失敗!我只使用Sonar-Ant Target。我對pom沒有做任何事情。

[聲納:聲納] [INFO]數據庫做了優化:421毫秒BUILD 成功總時間:49秒內[工作區] $ mvn.bat -f 「C:\ Documents和 設置\ hegdera.hudson \ jobs \ ZOOR2 \ workspace \ pom.xml「-e -B sonar:sonar -Dsonar.host.url = http:// localhost:8001 +打開錯誤堆棧跟蹤。 [INFO]正在掃描項目... [INFO]在存儲庫中搜索插入前綴爲'sonar'的插件。 [INFO] 忽略可用插件更新:2.0-beta-2,因爲它需要Maven 3.0版[INFO]忽略可用插件更新:2.0-beta-1,因爲它需要Maven版本3.0 [INFO] ----- -------------------------------------------------- ----------------- [INFO]構建Maven默認項目[INFO]任務段: [聲納:聲納](聚合器式)[INFO] ---- -------------------------------------------------- ------------------ [INFO] ---------------------------- -------------------------------------------- [錯誤] BUILD ERROR [ INFO] ----------------------------------------------- ------------------------- [INFO]不能執行魔咒:聲吶。它需要一個具有 現有pom.xml的項目,但構建不使用它。 [INFO] ---------------------------------------------- -------------------------- [INFO] Trace org.apache.maven.lifecycle.LifecycleExecutionException: 無法執行mojo:sonar。它需要一個具有 pom.xml的項目,但構建不使用它。在 org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:719) 在 org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:569) 在 org.apache.maven。 lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:539) 在 org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387) 在 org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor。 java:284) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180) 在org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)在 org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)在 org.apache.maven.cli.MavenCli.main( MavenCli.java:362)在 org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60) 在sun.reflect.NativeMethodAccessorImpl.invoke0(本機方法)在 sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:39) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 在java.lang.reflect.Method.invoke(Method.java:597)在 org.codehaus.classworlds。 Launcher.launchEnhanced(Launcher.java:315) at org.codehaus.classw org.codehaus.classworlds.Launcher.main(Launcher.java:375)org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) 引起的 通過:org.apache.maven.plugin。MojoExecutionException:不能執行 mojo:聲納。它需要一個包含現有pom.xml的項目,但 版本沒有使用。在 org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:414) 在 org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694) ... 17更[INFO] ------------------------------------------------- ----------------------- [INFO] Total time:< 1 second [INFO] Finished at:Fri Jul 15 17:37:18 GMT + 05 :30 2011 [INFO] Final Memory:2M/15M [INFO] ---------------------------------- -------------------------------------- Finished:FAILURE

任何人都可以幫助我如何解決這個問題?

回答

0

我明白了!它由Sonar Hudson Plugin完成!它一直在尋找Maven Pom.xml!

+1

您沒有提及Hudson插件....是的,在Sonar ANT任務引入之前(版本2.6)項目必須創建一個虛擬POM文件才能與Sonar集成。據我所知,Hudson插件可追溯到那個時期......我的建議是從ANT工作中運行聲納分析。 –

0

構建失敗正在拋出,因爲Maven無法提交POM文件.......當您嘗試使用ANT Sonar任務時,爲什麼要運行Maven?

中的新功能(通過聲納2.6引入),可以從ANT運行聲納分析如下:本課程

$ ant sonar 

假定您已經添加了一個新的目標,以你的build.xml名爲「聲納」。舉個例子,我推薦Sonar ANT任務documentation

+0

我只運行Ant。我運行聲納。我配置了一切。當我運行它時,在構建中的Sonar網站上創建報告,我看到構建失敗。 – Rajmahendra

+0

對不起,上面的命令跟蹤不匹配。您正在清楚地運行** mvn.bat **命令,該命令會報告沒有報告「pom.xml」文件的錯誤 –