Tôi khuyên bạn nên cố gắng chặn các cảnh báo cụ thể bằng cách sử dụng @SuppressWarnings("squid:S2078")
.
Đối với đàn áp nhiều cảnh báo bạn có thể làm điều đó như thế này @SuppressWarnings({"squid:S2078", "squid:S2076"})
Ngoài ra còn có các //NOSONAR
bình luận mà nói SonarQube để bỏ qua tất cả các lỗi cho một dòng cụ thể.
Cuối cùng nếu bạn có quyền thích hợp cho giao diện người dùng, bạn có thể phát hành cờ làm dương tính giả trực tiếp từ giao diện.
Lý do tại sao tôi khuyên bạn nên loại bỏ các cảnh báo cụ thể là thực hành tốt hơn để chặn một vấn đề cụ thể thay vì sử dụng //NOSONAR
và gây rủi ro cho sự cố về Sonar trong mã của bạn.
Bạn có thể đọc thêm về điều này trong FAQ
Lưu ý: Gábor Bakos được trỏ đến FAQ cũ mà bây giờ 404s. Đây là kết quả google đầu tiên đối với tôi vì vậy tôi muốn giúp đỡ bất cứ ai khác có thể có cùng một câu hỏi
Edit: 6/30/16 SonarQube bây giờ được gọi SonarLint
Trong trường hợp bạn đang tự hỏi làm thế nào để tìm thấy số mực. Chỉ cần nhấp vào thông điệp Sonar (ví dụ: Remove this method to simply inherit it.
) và vấn đề Sonar sẽ mở rộng.
Ở phía dưới bên trái, nó sẽ có số lượng mực (ví dụ. squid:S1185
Bảo trì> dễ hiểu)
Vì vậy, sau đó bạn có thể ngăn chặn nó bằng cách @SuppressWarnings("squid:S1185")
Đồng ý.Tuy nhiên, tôi không chắc liệu Sonar có diễn giải đúng '@ SuppressFBWarnings' (được thêm vào để tránh xung đột với' java.lang.SuppressWarnings') và cũng bỏ qua nó hay không. –
AFAIK, Sonar sử dụng FindBugs. Vì vậy, nếu FindBugs xử lý các chú thích này, tôi không thấy lý do tại sao chúng không hoạt động khi chạy FindBugs thông qua Sonar. Không nên khó để kiểm tra anyway. –
Liên kết Câu hỏi thường gặp đã lỗi thời. Đây là [FAQ] mới (http://docs.sonarqube.org/display/HOME/Frequently+Asked+Questions#FrequentlyAskedQuestions-Howtoremovefalsepositiveissues?) – wiredniko