Limpeza de código em netbeans

83

Existe algo semelhante às regras de limpeza do Eclipse (Preferências> Java> Estilo de código> Limpar) no NetBeans?

As regras de limpeza no eclipse permitem que você limpe coisas como organizar importações, remover conversões desnecessárias, adicionar anotações de substituição ausentes etc.

Você também pode fazer isso em um conjunto completo de classes / pacotes em vez de classes individuais?

Kapsh
fonte
3
Adicionei uma recompensa e espero que alguém conheça um plugin ou alguma outra maneira de fazer isso. Eu realmente sinto falta das minhas opções de limpeza do Eclipse.
Ben Hocking
Conforme respondido abaixo, existem maneiras de limpar certos aspectos de um único arquivo de código-fonte. Duvido que o NetBeans introduza um recurso "consertar todos os meus arquivos" porque as alterações em cada arquivo podem depender de alterações no (s) arquivo (s) anterior (es), então o NetBeans precisaria priorizar quais arquivos corrigir primeiro e compilar os arquivos à medida que corrige eles.
Daniel
@Daniel: A natureza dessas "correções" geralmente é menor: remover espaços em branco, adicionar tags @Override, organizar importações, remover conversões desnecessárias, remover variáveis ​​não utilizadas, etc. Ou seja, são correções que não devem ter impacto funcional e, portanto, não deve importar a ordem em que eles são aplicados.
Ben Hocking

Respostas:

90

Refactor > Inspect and Transform

Existe algo semelhante às regras de limpeza do Eclipse ((Preferências> Java> Estilo de código> Limpar) no NetBeans?

No NetBeans 8.0, a ferramenta de lote poderosa é Refactor> Inspect and Transform. Consulte a página do tutorial, Refatorando com Inspeção e Transformação no Editor Java do NetBeans IDE .

Ferramentas individuais também estão disponíveis:

  • Corrigindo importações
    Para um único arquivo, namespace ou projeto (dependendo do que está selecionado na janela Projeto ou tem o foco): Fonte> Organizar importações (para classificar e remover importações não utilizadas) ou Fonte> Corrigir importações (para classificar, remover importações não utilizadas, e adicionar importações ausentes). Ou durante cada salvamento: Ferramentas> Opções> Editor> Ao salvar> Organizar importações.

  • Remoção de espaços à direita
    Para um único arquivo (coloque o carret no arquivo de código): Fonte> Remover espaços à direita. Ou durante cada salvamento: Ferramentas> Opções> Editor> Ao salvar> Remover espaços em branco à direita.

  • Formato do código
    Para um único arquivo, namespace ou projeto: Código-fonte> Formato. (Personalize as regras em Tools > Editor > Formatting). Também existe um plugin chamado Jindent que você pode instalar (eu não o usei). Ou durante todo salvar: Tools > Options > Editor > On Save > Reformat.

Por padrão, o Netbeans exibirá ícones de dicas ao lado de linhas problemáticas de código e na barra de rolagem, permitindo que você execute uma correção automática, se desejar. Eles podem ser configurados via Tools > Options > Editor > Hints. O Netbeans pode pesquisar todos os problemas no projeto usando Código-fonte> Inspecionar. Ou, para reiterar, muitos desses problemas podem ser corrigidos em lote com Refactor > Inspect and Transform.

Jérôme Verstrynge
fonte
Legal. Obrigado. Com o tempo, o NetBeans tende a incluir novas ferramentas e utilitários, acelerando e facilitando a codificação nas distribuições principais. Bons plug-ins são frequentemente integrados ao núcleo. Novos plug-ins são oferecidos a cada lançamento. Acredito que funcionalidades totalmente automatizadas serão disponibilizadas mais cedo ou mais tarde ...
Jérôme Verstrynge
4
Como uma atualização para esta resposta, a formatação recursiva é implementada no Netbeans nativamente (yay!). Basta selecionar "Pacotes de código-fonte" no visualizador de pacotes e ir para Código-fonte> Formato. A única coisa que ele não faz é
limpar as
Existe um atalho para inspecionar e transformar e como configurá-lo
shareef
Levei um pouco para perceber que, após selecionar Inspect and Transform(no meu 8.2 Netbeans aparece diretamente como uma opção depois de clicar com o botão direito sobre o projeto; nenhum Refactormenu anterior) eu tinha que escolher Use: Configuration: Organize Imports(clicar no Manage...botão se ele não aparecer diretamente na lista suspensa. Existem dezenas de "inspeções" disponíveis para aplicar ao seu código!
Pere
22

O equivalente ao "Code Cleanup" do Eclipse no NetBeans é "Format". Está em Código-fonte> Formato e o atalho do teclado é Alt + Shift + F (no Windows). Infelizmente, ao contrário do Eclipse, não parece que isso pode ser configurado no NetBeans.

DR.
fonte
8
O Eclipse tem duas funções separadas: Code-Format e Code-Cleanup. O NetBeans Source-Format é apenas o equivalente do Code-Format - e mesmo assim não é tão poderoso. De forma alguma pode ser comparado ao Eclipse Code-Cleanup. Não sei como você conseguiu votos para esta resposta errada.
Martin
9
Em netbeans para formato de código alt + shift + fe importações ctrl + shift + i. e isso funciona para arquivo individual. Para todos os arquivos, não há funcionalidade.
Ravi Parekh
e mesmo com o código de formato, você não pode definir a largura da coluna até o que você deseja estender a linha de código. quero dizer, se você tiver 200 colunas de largura, o netbean será definido como uma única linha até que você manualmente Enter.
Ravi Parekh
@RaviParekh As opções em Ferramentas> Opções> Editor> Formatação> Quebra de linha estão lá, mas vejo que não tem efeito. Erro?
Aleksandr Dubinsky
9

Para Netbeans, use Ctrl + Shift + I para remover a importação não utilizada do arquivo.

Anil Chahal
fonte
A questão é como fazer isso para muitas classes / arquivos em vez de apenas um.
Basil Bourque
2

ferramentas -> opções -> Guia "Editor" -> Guia "Dicas" -> selecione Java (falando sobre) em JComboBox

e então você veria o oceano amarelo ..., ótimo e rápido da versão 6.9

mKorbel
fonte
Isso o notifica sobre possíveis problemas em seu código (e é muito útil), mas o que estamos procurando é uma opção para corrigir automaticamente problemas como esses, seja com um único comando para corrigir todos os problemas em um arquivo (ou melhor ainda um conjunto de arquivos) ou automaticamente ao salvar. O Eclipse tem essas duas opções. Eu o uso com freqüência para preencher automaticamente as instruções @Override ausentes, para organizar importações e para eliminar espaços em branco à direita.
Ben Hocking
@Ben Hocking :-) Eu não quero algo ... e automaticamente, porque em (majores) alguns casos existem mais de uma opção vindo das Dicas, e você pode selecionar "melhor" em Itens, como alguns automáticos pode escolher e conhece melhor opção ..., olha assim eu comecei FlameWar ...
mKorbel
@mKorbel: Quais itens são corrigidos automaticamente não são os mesmos que os avisos e, como você observou, não gostaria que fossem. Normalmente, as coisas "automáticas" são coisas triviais, como organizar importações e eliminar espaços em branco à direita, bem como coisas um pouco maiores, como adicionar @Override ausente (que poderia quebrar o código se outras pessoas compilassem com Java 1.5). O que quero dizer é que ele pode ser configurado separadamente de suas dicas e você pode fazer o quanto quiser. A "limpeza do código ao salvar" também é mais perigosa do que fazê-la mediante solicitação.
Ben Hocking
@Ben Hocking, mas nunca fiz distinção entre escrever melhor ou mais confortável no Eclipse ou no Netbeans
mKorbel
1
Existem muitas distinções que podem ser feitas, mas os usuários de ambos os IDEs se beneficiariam com a aprendizagem de truques do outro IDE. Por exemplo, eu realmente adoro a facilidade de usar a cobertura do Netbeans. Embora também seja possível fazer isso no Eclipse, são necessárias muitas outras etapas. Existem também diferenças mais significativas, é claro.
Ben Hocking
1

Eu sei que o netbeans aponta essas coisas automaticamente, mas além de simplesmente apontá-las, eu não sei.

soldado.moth
fonte
2
A versão 6.5 exibe um pequeno ícone de lâmpada embutido, que se você clicar em irá sugerir correções (como adicionar anotação de substituição, remover importações não utilizadas, etc.).
ssakl
0

Não sei como fazer isso em massa, mas se você excluir todas as importações de um arquivo de origem e clicar com o botão direito do mouse no editor de origem, poderá selecionar corrigir importações. Isso importará todas as classes para você em ordem alfabética, perguntando quando encontrar ambigüidades de pacote.

Como Soldier.moth apontou, o Netbeans apontará outros problemas, como projeções e anotações de sobreposição, em linha, pelo uso de uma lâmpada à esquerda da fonte.

James McMahon
fonte
0

Se você apenas deseja que seu código tenha indentações adequadas em um projeto inteiro, simplesmente clique no nome do projeto, vá em "Código-fonte" e clique em "Formatar". Espero que isto ajude!

Vinayak G
fonte