1
我使用Sonar API分析源代碼,我的規則之一是訪問註釋。static final變量的值
一些註釋可能在其中有一個Kind.MEMBER_SELECT,就像參數引用靜態最終變量時一樣。我想知道是否有辦法獲得這個變量的價值,知道它是最終的。
我使用Sonar API分析源代碼,我的規則之一是訪問註釋。static final變量的值
一些註釋可能在其中有一個Kind.MEMBER_SELECT,就像參數引用靜態最終變量時一樣。我想知道是否有辦法獲得這個變量的價值,知道它是最終的。
使用自定義規則來做到這一點的唯一方法就是導航到被引用值的聲明,並且只有當該聲明與註釋位於相同的編譯單元中時纔有可能(所以不是最常見的情況)。
總之:不容易,而不是一般情況。
在即將到來的未來,我們沒有真正的計劃來支持SonarJava。
謝謝!所以我只能得到變量的值,如果它在同一個文件中。即使它在同一個包中,但在其他文件中,我也無法獲得價值。我理解得好嗎?我對Sonar編譯單元的可能性瞭解不多。 – nmschumacher
是的,是這樣的:如果它在同一個文件中,你將有一種方法來訪問聲明和值,但如果常量是在另一個文件中定義的,則不可能。 – benzonico