Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

Removing unused imports leaves extra blank line after package statement, isn't idempotent

Aberta
#598 1 comentário 3 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
3/5
Tempo estimado
1-2 dias
Facilidade para iniciantes
35/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
java
Domínio
tooling

Direção de pesquisa

Reproduza o problema com google-java-format-1.9 usando inital_class.java e o comando --replace mostrado; depois, execute-o uma segunda vez para confirmar que a saída muda. Rastreie o tratamento, pelo formatter, das linhas em branco de package e de imports removidos; considera-se concluído quando formatar repetidamente o mesmo arquivo produz uma saída idêntica.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

bug

I have a class that if I format it twice with google java formatter it will produce 2 different results. This is not what I would expect - I would think that you can format a file any number of times and google java formatter should always produce the exact same result. Is my assumption wrong ?

Here is an example:

original class:

$ cat inital_class.java
package com.sun.something;

import com.x;
import com.y;
import com.z;

public class MockedLiveServiceExecutionContext {


}
$

If I then format it I get this:

$ java -jar ./google-java-format-1.9-all-deps.jar --replace inital_class.java
$ cat inital_class.java
package com.sun.something;


public class MockedLiveServiceExecutionContext {}
$ cat inital_class.java | cksum
42955951 79
$

And if I format it again I get this (it's removed an extra space):

$ java -jar ./google-java-format-1.9-all-deps.jar --replace inital_class.java
$ cat inital_class.java
package com.sun.something;

public class MockedLiveServiceExecutionContext {}
$ cat inital_class.java | cksum
2486624596 78
$
Linguagem predominante
Java
Estrelas
6.2k
Forks
936
Merge médio
6min
PRs com merge (30d)
3

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de google/google-java-format

Todas as issues de google/google-java-format

Issues semelhantes

Mais issues de Java

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.