일부 메소드 사용 중에는 (오류/경고 표시)를 금지하는 Eclipse/Plugin이 있습니다. 내 코드에서 System.currentTimeMillis()/Calendar.getInstance() 누군가가 이것을 사용하려고 시도하는 경우 누군가에 의해 호출되지 않는다는 것을 확인하는 방법을 원한다. eclipse는 오류를 표시해야한다.개발자가 Eclipse에서 일부 API를 사용하는 것을 금지합니다.
감사 Ankush
일부 메소드 사용 중에는 (오류/경고 표시)를 금지하는 Eclipse/Plugin이 있습니다. 내 코드에서 System.currentTimeMillis()/Calendar.getInstance() 누군가가 이것을 사용하려고 시도하는 경우 누군가에 의해 호출되지 않는다는 것을 확인하는 방법을 원한다. eclipse는 오류를 표시해야한다.개발자가 Eclipse에서 일부 API를 사용하는 것을 금지합니다.
감사 Ankush
FindBugs API를 사용하여 메서드 호출 (바이트 코드에서 찾을 수있는 다른 opcode)에 대한 메타 데이터를 제공하는 자체 FindBugs 플러그인을 작성할 수 있습니다. 귀하의 경우에는 작업에 금지 된 API 집합 (System.currentTimeMillis()
및 Calendar.getInstance()
)이 실행되는지 확인하는 맞춤 BytecodeScanningDetector
을 구체적으로 구현해야합니다.
Here's a tutorial FindBugs 플러그인을 작성하는 데 도움이됩니다. Eclipse에서이 플러그인을 사용할 수 있지만 빌드의 일부로 CI 서버에서 실행하는 것이 좋습니다.
PMD와 같은 다른 정적 분석 도구에는 자체 API를 사용하여 노출 된 동일한 기능이있을 수도 있습니다.
또한 빌드의 일부로 만이 파일을 실행하려면이 검사를 소나 (sonar)에 위임하면됩니다.이 검사는 easy construction of architectural rules like these을 허용합니다. 참고 - 메서드에서이 메서드를 사용하지 않았으므로 메서드 사용 대신 전체 클래스 용도를 금지하려는 경우 Sonar 아키텍처 제약이 더 적합하다고 나타납니다.
이클립스는 IDE입니다. Java 컴파일러가 포함 된 경우도 있지만 Eclipse 외부에서 실행되는 다른 Java 컴파일러도 많이 있습니다. Eclipse는 Java 컴파일러에서 반환 된 오류를 표시합니다 (IDE 자체는 오류가 발생하지 않습니다).
가장 좋은 방법은 프로젝트 내에서 참조를 검색하는 Eclipse의 기능을 사용하는 것입니다. 수동 프로세스이지만 원하는 내용에 대한 대부분의 참조를 찾을 수 있습니다. 물론 누군가 리플렉션을 사용하면 모든 베팅이 해제됩니다.