溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

SonarQube出現(xiàn)"Not inside a git worktree" 怎么解決

發(fā)布時間:2021-06-25 11:59:38 來源:億速云 閱讀:651 作者:chen 欄目:編程語言

本篇內(nèi)容主要講解“SonarQube出現(xiàn)"Not inside a git worktree" 怎么解決”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“SonarQube出現(xiàn)"Not inside a git worktree" 怎么解決”吧!

解決辦法

設(shè)置參數(shù) -Dsonar.scm.disabled=true

過程吐槽

0、起因

為了實施新增代碼質(zhì)量門禁,需要使用SonarQube對一個maven工程的代碼進行分析。過程中報錯,信息里有關(guān)鍵字"Not inside a git worktree"。

那個目錄確實不是一個git worktree,但是,要配合teamcity的原因,我也沒辦法給整個git worktree目錄。

1、Google

Google搜索上面的關(guān)鍵字,第一個結(jié)果就是解決這問題的,說要設(shè)置sonar.projectBaseDir和sonar.sources。顯然,設(shè)置了之后問題依然存在。

2、對比pom文件

另一個maven工程執(zhí)行sonar掃描沒出問題,于是對比了一下兩個工程設(shè)置的不同。
出錯的工程是一個早期SpringBoot工程,父pom是SpringBoot。正確的工程父pom是我們自己的,里面進行了sonar配置。
過了一遍我們自己的父pom里sonar相關(guān)配置,把自己感覺可能有影響的配置都加到命令行里,還是沒能解決問題。

3、柳暗花明

沒招了,mvn命令里加上-X,對比出錯的日志和正常的日志。

終于有所發(fā)現(xiàn),出錯的日志開始報錯的地方,正常的日志里輸出了一句debug:“File exclusion based on SCM ignore information is not available with this plugin”。

SCM ignore了所以正常跑,沒ignore就報"Not inside a git worktree"。
emmm,008表示這很符合邏輯。

Goolge sonar SCM File exclusion,找到了 -Dsonar.scm.exclusions.disabled=true

4、峰回路轉(zhuǎn)

設(shè)置上去,開始執(zhí)行,果然有效……之前開始執(zhí)行就報錯,加上之后跑了三分鐘還沒出錯。雖然沒跑出結(jié)果,迫不及待的開始宣布自己解決了問題。

然后,慘招打臉:跑了一段時間還是出錯了,又是"Not inside a git worktree"。

繼續(xù)看日志,報錯之前輸出日志“SCM Publisher SCM provider for this project is: git”。

這SCM provider是啥?怎么disable?
Google sonar scm provider disable,第一條就是答案:-Dsonar.scm.disabled=true。

問題解決

到此,相信大家對“SonarQube出現(xiàn)"Not inside a git worktree" 怎么解決”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI