blob: 8ce39e8a9d601fdd2231b3bd3f96e7175a0b35f6 [file] [log] [blame]
//
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership. The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied. See the License for the
// specific language governing permissions and limitations
// under the License.
//
= Análise de Código Estático no Editor de Java NetBeans IDE
:jbake-type: tutorial
:jbake-tags: tutorials
:jbake-status: published
:icons: font
:syntax: true
:source-highlighter: pygments
:toc: left
:toc-title:
:description: Análise de Código Estático no Editor de Java NetBeans IDE - Apache NetBeans
:keywords: Apache NetBeans, Tutorials, Análise de Código Estático no Editor de Java NetBeans IDE
Jan Lahoda, Alyona Stashkova
O Editor Java do NetBeans IDE tem uma nova funcionalidade de análise de código estático, que é uma ferramenta para localizar possíveis problemas e detectar inconsistências no código-fonte.
Neste tutorial, você aprenderá como executar análise estática de seu código Java usando FindBugs e Dicas Java NetBeans sem realmente executar suas aplicações.
image::images/netbeans-stamp.png[title="O conteúdo desta página se aplica ao NetBeans IDE 8.0"]
== Requisitos
*Para concluir este tutorial, você precisa dos seguintes recursos e softwares.*
|===
|Software ou Recurso |Versão Necessária
|link:http://netbeans.org/downloads/index.html[+NetBeans IDE+] |Versão 8.0
|link:http://www.oracle.com/technetwork/java/javase/downloads/index.html[+Java Development Kit+] (JDK) |Versão 7 e superior
|link:https://netbeans.org/projects/samples/downloads/download/Samples/Java/library.zip[+library.zip+] |Projeto NetBeans
|link:http://repo1.maven.org/maven2/com/google/code/findbugs/jsr305/2.0.0/jsr305-2.0.0.jar[+jsr305-2.0.0.jar +] |Solicitação de Especificação Java pretendida para melhorar a eficácia das ferramentas de análise estática
|===
*Observação:* ``jsr305-2.0.0.jar`` está incluído no ``library.zip`` para a finalidade deste tutorial.
Se você estiver usando outro projeto NetBeans, o link:http://repo1.maven.org/maven2/com/google/code/findbugs/jsr305/2.0.0/jsr305-2.0.0.jar[+jsr305-2.0.0.jar+] deverá ser submetido a download e adicionado à pasta Bibliotecas de seu projeto no IDE, conforme mostrado a seguir:
1. Clique com o botão direito na pasta Bibliotecas e escolha Adicionar JAR/Pasta no menu pop-up.
2. Na caixa de diálogo Adicionar JAR/Pasta, especifique o caminho para o arquivo ``jsr305-2.0.0.jar`` submetido a download e clique em Abrir.
image::images/jar.png[]
== Configurando o Ambiente do Tutorial
Além do software necessário listado acima, você deve ter instalado em seu computador o seguinte:
* O arquivo link:https://netbeans.org/projects/samples/downloads/download/Samples/Java/library.zip[+library.zip+] deve ser descompactado na sua pasta de projeto e aberto no NetBeans IDE.
* O plug-in FindBugs deve ser submetido a download e instalado no NetBeans IDE como segue:
1. Escolha Origem > Inspecionar o menu IDE principal.
2. Na caixa de diálogo Inspecionar, clique em Instalar.
[.feature]
--
image::images/inspect-small.png[role="left", link="images/inspect.png"]
--
[start=3]
. Na caixa de diálogo Instalador, clique em Próximo para continuar com a instalação.
[.feature]
--
image::images/plugin-small.png[role="left", link="images/plugin.png"]
--
[start=4]
. Revise o acordo de licença, selecione a opção do contrato de licença e clique em Instalar.
[start=5]
. Quando a instalação for concluída, clique em Finalizar.
== Usando Configurações Predefinidas
Você pode usar as seguintes configurações predefinidas ao inspecionar seu código no NetBeans IDE:
* <<all,Todos os Analisadores>>
* <<hints,Dicas Java NetBeans>>
* <<fb,FindBugs>>
* <<default,Default>>
=== Executando Todos os Analisadores
A configuração ``Todos os Analisadores`` implanta todas as ferramentas de análise de código estático disponível no IDE.
*Para executar a configuração de ``Todos os Analisadores`` , execute as seguintes etapas: *
1. Escolha Origem > Inspecionar na barra de ferramentas do IDE principal.
2. Na lista drop-down Escopo da caixa de diálogo Inspeção, selecione ``Projeto Atual (biblioteca)`` .
3. Na lista drop-down Configuração, selecione a configuração ``Todos os Analisadores`` .
[.feature]
--
image::images/allconfig-small.png[role="left", link="images/allconfig.png"]
--
*Observação:* você precisa instalar o plug-in <<plugin,Findbugs>> para executar esta configuração pela primeira vez.
[start=4]
. Clique em Inspecionar.
Os resultados da análise são exibidos na janela Inspetor como uma view em árvore à esquerda.
[.feature]
--
image::images/all-small.png[role="left", link="images/all.png"]
--
A descrição da atualmente selecionada na view em árvore Localizar é exibida à direita.
[.feature]
--
image::images/alldescription-small.png[role="left", link="images/alldescription.png"]
--
*Observação:* se você quiser deixar alguma parte de seu código que está reportado como problemáticos como está, o IDE permite que você suprima a advertência deste código para deixá-lo sem nenhuma alteração. Você pode clicar duas vezes em uma advertência na view em árvore da Janela Inspetor para ir para o Editor de Código-fonte. Pressione Alt-Enter, clique na seta preta apontando para a direita no final da dica exibida, e escolha ``SuppressWarning - _(nome da advertência)_`` .
[.feature]
--
image::images/suppress-small.png[role="left", link="images/suppress.png"]
--
=== Verificando Código Java com Dicas Java NetBeans
A configuração de ``Dicas Java NetBeans`` disponível no IDE permite que você verifique se as regras padrão de codificação predefinidas foram atendidas pelo Código-fonte em consideração. Em outras palavras, ele se aplica um conjunto de Dicas Java NetBeans (também conhecido como inspeções do código) para seus arquivos de código-fonte Java.
*Para executar a configuração de ``Dicas Java NetBeans`` , conclua as seguintes etapas: *
1. Escolha Origem > Inspecionar na barra de ferramentas do IDE principal.
2. Na lista drop-down Escopo da caixa de diálogo Inspecionar, selecionar ``Abrir Projetos`` (se tiver apenas um projeto da ``biblioteca`` aberto no IDE) ou ``Projeto Atual (biblioteca)`` .
*Observação:* você pode definir um escopo (um arquivo, pacote ou projeto) para a configuração de ``Dicas Java NetBeans`` .
[start=3]
. Selecione o botão de rádio Configuração e escolha ``Dicas Java NetBeans`` na lista drop-down.
[.feature]
--
image::images/hints-small.png[role="left", link="images/hints.png"]
--
[start=4]
. Clique em Inspecionar.
O IDE exibe a view em árvore com os resultados da análise, com a configuração ``Dicas Java NetBeans`` na Janela Inspetor.
image::images/hintsconfig.png[]
[start=5]
. Na Janela Inspetor, clique no botão <<categorize,Categorizar>> na barra de ferramentas à esquerda para exibir os problemas agrupados em categorias.
image::images/catview.png[]
A tabela a seguir exibe os comandos disponíveis na Janela Inspetor.
|===
cone |Nome |Função
|image::images/refreshbutton.png[] |*Atualizar* |Exibe uma lista atualizada dos resultados da análise estática.
|image::images/upbutton.png[] |*Problema Anterior* |Exibe o problema anterior na lista de resultados da análise estática.
|image::images/downbutton.png[] |*Próximo Problema* |Exibe o seguinte problema na lista de resultados da análise estática.
|image::images/categorizebutton.png[] |
*Categorizar* |Alterna a view contraída dos problemas detectados em um arquivo, projeto ou pacote ou a view categorizada de todos os problemas detectados.
|===
=== Localizando Problemas em Potencial no Código Java com Findbugs
A configuração ``FindBugs`` disponível no IDE permite localizar uma ampla variedade de problemas potenciais em seu código. Ele chama a ferramenta FindBugs de código-fonte aberta popular para análise de código em Java. O relatório de erros é gerado e é exibido na janela do Inspetor do NetBeans IDE, que categoriza todos os problemas encontrados e permite navegação direta de erros no relatório para o código suspeito. Você também pode ler uma descrição do erro na janela adjacente ou revisá-la na página link:http://findbugs.sourceforge.net/bugDescriptions.html[+Descrições de Erro de FindBugs+] pelo ponteiro fornecido na parte superior do quadro esquerdo.
*Observação:* você precisa instalar o plug-in <<plugin,Findbugs>> para executar esta configuração pela primeira vez.
*Para identificar possíveis erros em seu código Java com a configuração ``FindBugs`` , execute as seguintes etapas:*
1. Abrir o projeto da ``biblioteca`` no NetBeans IDE e escolha Código-fonte > Inspecionar na barra de ferramentas principal.
2. Na lista drop-down Escopo da caixa de diálogo Inspeção, selecione ``Projeto Atual (biblioteca)`` .
*Observação:* Você pode inspecionar um arquivo, pacote ou projeto(s) com a configuração ``FindBugs`` .
[start=3]
. Na caixa de diálogo Inspecionar, selecione a configuração ``FindBugs`` .
[.feature]
--
image::images/fb-small.png[role="left", link="images/fb.png"]
--
[start=4]
. Clique no botão Inspecionar para iniciar a análise de código estático.
O resultado da análise de código estático é exibido na Janela do Inspetor abaixo do editor de código-fonte.
A descrição do erro selecionado é exibida no quadro à direita.
[.feature]
--
image::images/inspector-small.png[role="left", link="images/inspector.png"]
--
[start=5]
. Se preferir, clique no botão <<categorize,Categorizar>> na barra de ferramentas à esquerda para exibir os erros agrupados em categorias.
image::images/fbcat.png[]
*Observações:*
* Se você clica duas vezes em um problema na lista expandida, o IDE exibe o problema relatado no editor de código-fonte.
pressione Alt-Enter para exibir a descrição do erro no código-fonte.
[.feature]
--
image::images/source-editor-small.png[role="left", link="images/source-editor.png"]
--
* Erros potenciais são destacados no código com ícones do ponto de exclamação (image::images/exclamation.png[]) na margem à esquerda do Editor de Código-fonte.
*Para ativar FindBugs no Editor Java, conclua as seguintes etapas:*
1. Escolha Ferramentas > Opções na barra de ferramentas do IDE principal.
2. Selecione a guia Editor e escolha Dicas.
3. Escolha ``FindBugs`` na lista drop-down Idioma.
[.feature]
--
image::images/fb-editor-small.png[role="left", link="images/fb-editor.png"]
--
[start=4]
. Selecione a opção Executar FindBugs no Editor.
[start=5]
. Clique em OK.
Se você agora pressionar Alt-Enter o código-fonte onde um erro é reportado e clique na seta preta apontando para a direita no final da dica exibida, o IDE mostra algumas opções de correção para um possível erro.
[.feature]
--
image::images/fbenabled-small.png[role="left", link="images/fbenabled.png"]
--
=== Personalizando uma Configuração Default
Enquanto trabalha em seu código pode ser necessário personalizar uma configuração predefinida que inclui suas próprias dicas Java NetBeans ou erros do FindBugs.
*Para adaptar uma configuração ``Default`` predefinida em suas próprias necessidades, conclua as etapas a seguir:*
1. Escolha Origem > Inspecionar na barra de ferramentas do IDE principal.
2. Na caixa de diálogo Inspecionar, selecione o botão de rádio Configuração e selecione a configuração ``Padrão`` .
3. Clique em Gerenciar.
O IDE exibe a caixa de diálogo Configurações.
image::images/configurations-db.png[]
[start=4]
. Garantir ``Default`` é selecionado na lista drop-down Configurações.
[start=5]
. Na lista drop-down Analisador, selecione o analisador ``Conformidade de Perfis do JRE 8`` , ``Dicas Java Netbeans`` ou ``FindBugs`` .
[start=6]
. Dependendo da escolha do analisador na etapa anterior, selecione o perfil a ser validado, as inspeções ou os erros que você precisa incluir na configuração ``Padrão`` .
[.feature]
--
image::images/select-inspections-small.png[role="left", link="images/select-inspections.png"]
--
[start=7]
. Clique em OK para salvar sua configuração ``Default`` .
== Criando e Deletando Configurações
Você pode criar e deletar suas próprias configurações para ser usada na análise estática de seu código Java.
*Para criar uma configuração, execute as seguintes etapas:*
1. Escolha Origem > Inspecionar na barra de ferramentas do IDE principal.
2. Na caixa de diálogo Inspecionar, selecione o botão de rádio Configuração e selecione a configuração ``Padrão`` .
3. Clique em Gerenciar.
4. Na caixa de diálogo Configurações, clique na seta preta no fim da lista drop-down Configurações e escolha Novo.
image::images/newconfig.png[]
Uma configuração ``newConfig`` será criada e adicionada à lista drop-down Configurações.
image::images/newconfig-created.png[]
[start=5]
. Na lista drop-down Analisador, escolha ``Conformidade de Perfis do JRE 8`` , ``Dicas Java Netbeans`` ou ``FindBugs`` .
[start=6]
. Especifique o perfil, as inspeções ou os erros a serem incluídos na sua própria configuração.
[start=7]
. Clique em OK para salvar suas edições e fechar a caixa de diálogo Configurações.
A configuração ``newConfig`` criada está disponível na lista drop-down Configuração da caixa de diálogo Inspecionar.
[.feature]
--
image::images/newconfig-inspect-small.png[role="left", link="images/newconfig-inspect.png"]
--
*Observação:* para renomear uma configuração, selecione a configuração ``newConfig`` na lista drop-down Configurações, clique na seta preta no fim da lista drop-down Configurações e selecione Renomear. Digite um novo nome (por exemplo, ``renamedconfig`` ) e pressione Enter para salvar as edições.
image::images/renamedconfig.png[]
*Para deletar uma configuração, execute as seguintes etapas:*
1. Escolha Origem > Inspecionar na barra de ferramentas do IDE principal.
2. Na caixa de diálogo Inspecionar, selecione o botão de rádio Configuração e selecione a configuração a ser excluída ( ``renamedConfig`` neste exemplo).
3. Clique em Gerenciar.
4. Na caixa de diálogo Configurações, clique na seta preta no fim da lista drop-down Configurações e escolha Excluir.
image::images/delete.png[]
[start=5]
. Na caixa de diálogo Deletar Configuração, clique em Sim para confirmar a exclusão da configuração.
image::images/delete-confirm.png[]
A configuração ``renamedConfig`` é deletada da lista de Configurações.
*Observação:* Consulte o link:http://platform.netbeans.org/tutorials/nbm-java-hint.html[+Tutorial do Módulo de Dicas Java NetBeans+] para obter informações sobre como criar um módulo NetBeans que fornece uma ou mais dicas Java NetBeans.
== Executando Inspeções Únicas
Você pode inspecionar seu código para uma determinada deficiência em seu código-fonte usando a funcionalidade de análise de código estático no NetBeans IDE.
*Para detectar uma inconsistência específica ou problema em seu código-fonte Java com uma inspeção única, conclua as seguintes etapas:*
1. Escolha Origem > Inspecionar o menu IDE principal.
2. Na lista drop-down Escopo da caixa de diálogo Inspecionar, selecione um arquivo, pacote ou projeto a ser inspecionado.
3. Selecione Inspeção Única e faça o seguinte:
* Na lista drop-down de Inspeção Simples, role e selecione uma dica _única_ do Java Netbeans ou erro de FindBugs para ser usado na análise do código-fonte.
[.feature]
--
image::images/single-inspection-small.png[role="left", link="images/single-inspection.png"]
--
* Clique em Procurar para abrir a caixa de diálogo Configurações e, na lista drop-down Analisador, especifique o analisador e, em seguida, escolha um perfil (para o analisador Conformidade de Perfil do JRE 8), uma _única_ inspeção (para o analisador Dicas Java NetBeans) ou um _único_ erro (para o analisador FindBugs) para uso na análise de código-fonte. Clique em OK para fechar a caixa de diálogo Configurações.
[.feature]
--
image::images/hint-inspection-small.png[role="left", link="images/hint-inspection.png"]
--
[start=4]
. Na caixa de diálogo Inspecionar, clique em Inspecionar para executar a análise de código-fonte.
Após a operação Inspecionar ser concluída, as dicas que podem ser aplicadas a seu código ou erros que foram encontradas são exibidas na janela Inspetor abaixo o Editor de Código-fonte.
== Resumo
Este tutorial abrange mais frequente usos da funcionalidade na análise de código estático NetBeans IDE. Observe que com a funcionalidade de análise de código estático você também pode executar as refatorações personalizadas no escopo do projeto, ou aplicar determinadas configurações de refatoração à diversos projetos abertos no IDE, etc..
<<top,início>>
link:/about/contact_form.html?to=3&subject=Feedback:%20Static%20Code%20Analysis%20in%20NetBeans%20IDE[+Enviar Feedback neste Tutorial+]
== Consulte Também
Para ver o material relacionado, consulte os seguintes documentos:
* link:code-inspect-screencast.html[+Vídeo da Funcionalidade Código Estático no NetBeans IDE+]
* link:http://wiki.netbeans.org/Java_Hints[+Lista Completa de Dicas Java NetBeans+]
* link:http://wiki.netbeans.org/JavaDeclarativeHintsDescriptionSketch[+Descrição de Dicas Declarativas do Java NetBeans+]
* link:http://platform.netbeans.org/tutorials/nbm-java-hint.html[+Tutorial do Módulo de Dicas Java NetBeans+]
* link:http://www.oracle.com/pls/topic/lookup?ctx=nb8000&id=NBDAG613[+Usando Dicas de Análise de Código-fonte e Refatoração+] em _Desenvolvendo Aplicações com o NetBeans IDE_
<<top,início>>