Nota
Haga clic en el botón Usar esta plantilla (no Fork ).
Este es un proyecto de plantilla diseñado para demostrar cómo desarrollar su propio análisis estático utilizando TAI-E (un marco de análisis estático fácil de aprender/usar para Java) como una dependencia en un proyecto de Gradle o Maven.
El objetivo principal de este proyecto de plantilla es acelerar la fase de configuración del desarrollo de análisis estáticos sobre TAI-E para desarrolladores nuevos y experimentados al preconfigurar el andamio del proyecto y mantener todo organizado.
Este proyecto de plantilla contiene archivos relacionados con gradle y de Maven. Por lo tanto, debe elegir la herramienta de compilación que está utilizando, concéntrese en los archivos que necesita en él y eliminar otros archivos irrelevantes.
Para los usuarios de Gradle, se requieren los siguientes archivos, mientras que otros se pueden eliminar:
.
├── gradle (Gradle Wrapper)
├── src (Source code folder)
├── build.gradle.kts (Gradle configuration)
├── gradlew (*nix Gradle Wrapper script)
└── gradlew.bat (Windows Gradle Wrapper script)
Para los usuarios de Maven, se requieren los siguientes archivos, mientras que otros se pueden eliminar:
.
├── .mvn (Maven Wrapper)
├── src (Source code folder)
├── mvnw (*nix Maven Wrapper script)
├── mvnw.cmd (Windows Maven Wrapper script)
└── pom.xml (Maven configuration)
Advertencia
Asegúrese de eliminar todos los archivos no necesarios de su proyecto.
Antes de sumergirse en el desarrollo del análisis estático y todo lo relacionado con él, vale la pena mencionar los beneficios de usar plantillas de GitHub. Al crear un nuevo proyecto utilizando la plantilla actual, comienza sin historial o referencia a este repositorio. Esto le permite crear un nuevo repositorio fácilmente sin copiar y pegar contenido anterior, repositorios de clones o limpiar el historial manualmente.
Todo lo que tiene que hacer es hacer clic en el botón Use this template (debe iniciarse sesión con su cuenta GitHub).
Una vez que esto está completo, el proyecto está listo para ser clonado a su entorno local y se abre con Idea IntelliJ.
El siguiente paso, después de abrir su proyecto en IntelliJ Idea, es establecer el SDK adecuado en Java en la versión 17 dentro de la configuración de la estructura del proyecto. Luego puede llegar a trabajar implementando sus ideas.
La plantilla preparada proporciona el menor código posible porque es imposible que un andamio general cumpla todos los requisitos específicos para todos los análisis estáticos sobre TAI-E. Por lo tanto, la plantilla contiene solo los siguientes archivos:
.
└── 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)
Los archivos build.gradle.kts y pom.xml son los archivos de configuración del proyecto para Gradle y Maven, respectivamente. Hay algunas propiedades genéricas que debe modificar más tarde cuando trabaja en su propio código analizador.
Metadatos del proyecto:
group = " org.example "
description = " tai-e-template "
version = " 0.0.1-SNAPSHOT "Clase de punto de entrada de su analizador:
application {
mainClass.set( " org.example.MyMain " )
}Versión Tai-E especificada:
val taieVersion = " 0.2.2 "Metadatos del proyecto:
< groupId >org.example</ groupId >
< artifactId >tai-e-template</ artifactId >
< version >0.0.1-SNAPSHOT</ version >Clase de punto de entrada de su analizador:
< build >
...
< mainClass >org.example.MyMain</ mainClass >
...
</ build >Versión Tai-E especificada:
< properties >
...
< tai-e .version>0.2.2</ tai-e .version>
</ properties >Si necesita probar cómo ejecutar su analizador desde la línea de comandos (por ejemplo, cuando se desarrolla en entornos sin cabeza como servidores remotos):
Para los usuarios de Gradle, ejecute ./gradlew run para ejecutar su analizador.
Para los usuarios de Maven, ejecute ./mvnw test para ejecutar su analizador.