메모
이 템플릿 사용 버튼을 클릭하십시오 ( 포크 아님).
이것은 Gradle 또는 Maven 프로젝트의 종속성으로 TAI-E (Java를위한 학습하기 쉬운/사용 정적 분석 프레임 워크)를 사용하여 고유 한 정적 분석을 개발하는 방법을 보여주기 위해 설계된 템플릿 프로젝트입니다.
이 템플릿 프로젝트의 주요 목표는 프로젝트 스캐 폴드를 미리 구성하고 모든 것을 구성하여 새롭고 숙련 된 개발자 모두를 위해 TAI-E 위의 정적 분석 개발의 설정 단계를 속도를 높이는 것입니다.
이 템플릿 프로젝트에는 Gradle 관련 파일 및 Maven 관련 파일이 모두 포함되어 있습니다. 따라서 사용중인 빌드 도구를 선택하고 필요한 파일에 초점을 맞추고 다른 관련 파일을 삭제해야합니다.
Gradle 사용자의 경우 다음 파일이 필요하고 다른 파일은 삭제할 수 있습니다.
.
├── gradle (Gradle Wrapper)
├── src (Source code folder)
├── build.gradle.kts (Gradle configuration)
├── gradlew (*nix Gradle Wrapper script)
└── gradlew.bat (Windows Gradle Wrapper script)
Maven 사용자의 경우 다음 파일이 필요하고 다른 파일은 삭제할 수 있습니다.
.
├── .mvn (Maven Wrapper)
├── src (Source code folder)
├── mvnw (*nix Maven Wrapper script)
├── mvnw.cmd (Windows Maven Wrapper script)
└── pom.xml (Maven configuration)
경고
프로젝트에서 필요한 모든 파일을 제거하십시오.
정적 분석 개발과 관련된 모든 것을 사용하기 전에 GitHub 템플릿 사용의 이점을 언급 할 가치가 있습니다. 현재 템플릿을 사용하여 새 프로젝트를 만들면이 저장소에 대한 기록이나 참조없이 시작합니다. 이를 통해 이전 컨텐츠를 복사하고 붙여 넣거나 복제 리포지토리를 복사하거나 붙여 넣지 않고 쉽게 새 저장소를 만들 수 있습니다.
Use this template 버튼을 클릭하기 만하면됩니다 (Github 계정으로 로그인해야 함).
이것이 완료되면, 프로젝트는 지역 환경에 복제 할 준비가되어 있고 Intellij 아이디어로 열릴 준비가되었습니다.
다음 단계는 Intellij Idea로 프로젝트를 열었을 때 프로젝트 구조 설정 내에서 버전 17 에서 적절한 SDK를 Java로 설정하는 것입니다. 그런 다음 아이디어를 구현할 수 있습니다.
준비된 템플릿은 일반적인 스캐 폴드가 TAI-E 위의 모든 정적 분석에 대한 모든 특정 요구 사항을 충족하는 것이 불가능하기 때문에 가능한 한 적은 코드를 제공합니다. 따라서 템플릿에는 다음 파일 만 포함됩니다.
.
└── src
├── main
│ └── java
│ └── org
│ └── example
│ └── MyMain.java (Your analyzer code)
└── test
└── resources
├── MyClass.java (The program analyzed by your analyzer)
└── *.class (All the .class files obtained by compiling MyClass.java with Java 17)
build.gradle.kts 및 pom.xml 파일은 각각 Gradle 및 Maven의 프로젝트 구성 파일입니다. 자체 분석기 코드에서 작업 할 때 나중에 수정해야 할 일반적인 속성이 있습니다.
프로젝트 메타 데이터 :
group = " org.example "
description = " tai-e-template "
version = " 0.0.1-SNAPSHOT "분석기의 진입 점 클래스 :
application {
mainClass.set( " org.example.MyMain " )
}지정된 Tai-e 버전 :
val taieVersion = " 0.2.2 "프로젝트 메타 데이터 :
< groupId >org.example</ groupId >
< artifactId >tai-e-template</ artifactId >
< version >0.0.1-SNAPSHOT</ version >분석기의 진입 점 클래스 :
< build >
...
< mainClass >org.example.MyMain</ mainClass >
...
</ build >지정된 Tai-e 버전 :
< properties >
...
< tai-e .version>0.2.2</ tai-e .version>
</ properties >명령 줄에서 분석기를 실행하는 방법을 테스트 해야하는 경우 (예 : 원격 서버와 같은 헤드리스 환경에서 개발할 때) :
Gradle 사용자의 경우 RUN ./gradlew run 분석기를 실행하십시오.
Maven 사용자의 경우 분석기를 실행하기 위해 ./mvnw test 실행하십시오.