저는 이것을 Intellij can scan으로 알고 있습니다. 고대 프로젝트 인 Scannotation이있는 것 같습니다. 이들 중 어느 것도 내가 원하는 것을 수행하지 않는다.사용하지 않는 모든 클래스를 파일에 나열하는 방법은 무엇입니까?
@Deprecated
으로 표시된 클래스의 전체 패키지 이름을 내 코드베이스에 나열하고 싶습니다.
내 질문 : 사용하지 않는 모든 클래스를 파일에 나열하는 방법은 무엇입니까? 유닉스/리눅스 시스템에서
저는 이것을 Intellij can scan으로 알고 있습니다. 고대 프로젝트 인 Scannotation이있는 것 같습니다. 이들 중 어느 것도 내가 원하는 것을 수행하지 않는다.사용하지 않는 모든 클래스를 파일에 나열하는 방법은 무엇입니까?
@Deprecated
으로 표시된 클래스의 전체 패키지 이름을 내 코드베이스에 나열하고 싶습니다.
내 질문 : 사용하지 않는 모든 클래스를 파일에 나열하는 방법은 무엇입니까? 유닉스/리눅스 시스템에서
이 사용할 수있는 것입니다 :이와
package util;
import io.github.lukehutch.fastclasspathscanner.FastClasspathScanner;
import io.github.lukehutch.fastclasspathscanner.matchprocessor.ClassAnnotationMatchProcessor;
public class AnnotationScanTest {
public static void main(String args[]) throws ClassNotFoundException {
new FastClasspathScanner("com")
// Optional, in case you want to debug any issues with scanning.
// Add this right after the constructor to maximize the amount of log info.
.verbose()
// Add a MatchProcessor ("Mechanism 1")
.matchClassesWithAnnotation(Deprecated.class, new ClassAnnotationMatchProcessor() {
@Override
public void processMatch(Class<?> matchingClass) {
System.out.println("Matching annotation: " + matchingClass);
}
})
// Actually perform the scan (nothing will happen without this call)
.scan();
}
}
당신이 sed
또는 다른 텍스트 편집기로 표기을 패키지로 변경 될 수 있습니다 절대 경로와 파일의 목록을 줄 것이다 find . -name *.java -regex "@Deprecated"
를 사용할 수 있습니다.
Windows에서 git을 설치하면이 명령을 실행할 수있는 bash가 생깁니다.
Structural Search을 사용할 수 있습니다.
CTRL
+ SHIFT
+ A
->Search Structurally
사용이 모두 사용되지 않는 클래스를 찾을 수 :
@Deprecated
class $class$ {
}
문제를, 또한 더 이상 사용되지 않는 메소드가있는 파일을 나열합니다 (전체 클래스가 사용되지 않음) –
이것은 훌륭합니다. 클래스 선언 전에 완벽하게 처리 할 수 있도록 수정하십시오. – hawkeye