
O ZPA é o analisador e a ferramenta de análise de código estático para PL/SQL e Oracle SQL.
Você pode usá-lo em uma instância de sonarqube no local. Sonarqube é uma plataforma aberta para gerenciar a qualidade do código.
Veja alguns exemplos em nossa instância Sonarqube!
Deseja usar este analisador em um projeto hospedado no SonarCloud? Experimente o zpa-cli!
| Versão ZPA | Versão Sonarqube (min/max) |
|---|---|
| 3.6.0 | 9.9 / 10.7 |
| 3.7.0 (em desenvolvimento) | 9.9 / 24.12 |
O kit de ferramentas ZPA é uma ferramenta visual para revisar a AST (Sintaxe Abstract Tree) e a tabela de símbolos gerada pelo analisador.
O mais recente kit de ferramentas ZPA pode ser baixado na página de lançamentos e requer JDK 11 ou mais recente.
Todos são bem -vindos para contribuir. Leia nossas diretrizes de contribuição para obter mais informações.
Há algumas coisas que você precisa saber sobre o código. É dividido nesses módulos:
plsql-custom-rules -Projeto de demonstração mostrando como estender o ZPA com regras de codificação personalizadas.sonar-zpa-plugin -O próprio plugin Sonarqube, este módulo contém todo o código necessário para se integrar à plataforma Sonarqube.zpa-checks -As regras de codificação internas fornecidas pelo ZPA.zpa-checks-testkit -Helper para regras de codificação, ele pode ser usado para testar regras personalizadas.zpa-core - O coração deste projeto. Ele contém o Lexer, o analisador e o código necessário para entender e processar o código PL/SQL.zpa-toolkit - Uma ferramenta visual para revisar a AST (Sintaxe Resumo) gerada pelo analisador. A API exposta a plug -ins personalizada deve estar localizada no pacote org.sonar.plugins.plsqlopen.api (é um requisito do servidor Sonarqube). As aulas localizadas fora deste pacote não estão preparadas para consumo externo; portanto, se você as usar, seu código poderá quebrar sem mais aviso.
Existem dois conjuntos de testes de integração:
Para executar os testes de integrações, primeiro atualize os submódulos:
git submodule update --init --recursive
Crie o plug -in principal e o exemplo de regras personalizadas:
./gradlew build publishToMavenLocal
./gradlew build -p plsql-custom-rules
Em seguida, execute os testes:
./gradlew integrationTest
Por padrão, os testes serão executados usando o Sonarqube 9.9 LTA. Você LATEST_RELEASE[24.12] alterar a versão SONARQUBE abcd o sonar.runtimeVersion DE PROPRIEDADE LATEST_RELEASE[9.9]
./gradlew integrationTest -Dsonar.runtimeVersion=LATEST_RELEASE[9.9]