Gerçekten bilemiyorum ..SonarQube - Java kuralı "S128" - Kural neden gerekli olmadığında bir break ifadesinin eksik olduğu konusunda neden şikayet ediyor? Sonar Ben İhtiyaç olmadığında bile "break ifadesinin yok" gerçeği şikayet tutar neden
My anahtarı:
public static String lookupVoyageId(String referenceNumber, String sender) {
switch (sender) {
case "400_HGENT":
case "200_HAPEN":
case "500_HOOST":
Preconditions.checkArgument(referenceNumber.contains("-"));
return referenceNumber.split("-")[0];
case "600_HZEEB":
Preconditions.checkArgument(referenceNumber.length() >= 6);
return referenceNumber.substring(0, 6);
case "800_BVL":
throw new TransferException("This reference number for IBIS isn't according to the requirements. Can't implement it yet.");
case "MCCD":
throw new TransferException("This reference number for MCCD isn't according to the requirements. Can't implement it yet.");
default:
throw new TransferException("The sender (" + sender + ") couldn't be identified.");
}
}
ve sonar Bana kritik önem veriyor: "Bir anahtar deyimi bir ara vermiyor"
Neden bu? Bu anahtarda herhangi bir molaya ihtiyacım yok mu?
Özel bir durum olabileceğini biliyorum, ancak web'de hiçbir şey bulamıyorum.
Hangi hat için hata veriyorsunuz? Düşüş vakaları için değil mi? Şahsen, orada bir '// düşme' yorumunu görmek isterdim, ama Sonar'ın bundan şikayetçi olduğu konusunda şüphem yok ... –
@Slanec Sadece anahtarın ilk satırında.Ve aynı geçişi, başka bir anahtarda düşmeden geçiriyorum. – GregD
@Slanec Aslında, yorum uyarıyı çok iyi düzeltebilir. Http://stackoverflow.com/questions/5479019/is-sonar-replacement-for-checkstyle-pmd-findbugs göre sonar diğer libs, checkstyle arasında kullanır. Ve checkstyle (http://checkstyle.sourceforge.net/config_coding.html#FallThrough) düşmek istendiğinde bir yorum bekler. – Magnilex