2011-09-10 2 views
0

방금 ​​findbugs를 사용하기 시작했습니다. 나는 일반적으로 사용하고있는 정적 인 simpleDateFormat을 가지고 있으며 findbugs는이를 버그로 표시했다. SimpleDateFormat에 대한 참조를보고 나면 알았습니다. 하지만 다음 줄에 정적 java.text.DateFormat 버그가 계속 나타납니다.왜 로컬 SimpleDateFormat가 버그가 발생합니까?

1) final SimpleDateFormat df = new SimpleDateFormat ("MMM dd yyyy"); 2) 최종 DateFormat df = 새 SimpleDateFormat ("MMM dd yyyy");

나는 이클립스를 사용하고 있으며, 처음에는 플래그가 붙은 버그가 코드가 수정 되었음에도 불구하고 여전히 나타나고있는 것처럼 보입니다.

나는 여전히 버그로 나타나는 또 다른 "수정 된 버그"가 있습니다. hashCode를 재정의하지 않고 equals를 구현했습니다. 이제 hashCode 메서드를 추가했지만 equals를 재정의 한 다음 hashCode를 재정의해야한다는 버그를 계속해서받습니다.

또한 초기 버그 중 일부는 주석 줄에 표시되어 원래 버그/위치가보고되고 있음을 다시 시사합니다.

Eclipse에서 "버그"를 제거하려면 어떻게해야합니까?

답변

1

FindBugs는 컴파일 된 클래스 파일에서 작동합니다. 깨끗한 다음 프로젝트를 빌드하고 FindBugs를 다시 실행하십시오.

0

1) final SimpleDateFormat df = new SimpleDateFormat ("MMM dd yyyy"); 2) 최종 DateFormat df = 새 SimpleDateFormat ("MMM dd yyyy");

나는 어젯밤에 같은 문제가 발생했습니다. 멀티 쓰레딩 중에 이들 중 하나를 사용하면 충돌이 발생합니다. SimpleDateFormat는 스레드로부터 안전하지 않습니다.

FindBugs Perspective 모드로 들어가면 버그가있는 이유에 대한 세부 정보를 볼 수 있으며 때때로 유용한 링크가 있습니다. 해결할.

나는 이클립스를 사용하고, 있던 버그가 처음 여전히 코드가 가 수정 된 경우에도 게재되어 플래그 나에게 나타납니다.

다시 찾기를 다시 실행하십시오. 모든 변경 사항은 FindBugs를 재실행 할 필요가 있습니다.

Eclipse에서 "버그"를 제거하려면 어떻게해야합니까?

프로젝트 -> 버그 찾기 -> 버그 표시 자 지우기를 마우스 오른쪽 버튼으로 클릭하십시오.

관련 문제