Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

unused import removal leaves extra blank line between package declaration and class Javadoc / declaration

Ouverte
#1,436 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

@arimu1 y travaille déjà.

Depuis le 5/8/2026.

  • #1437 par @arimu1 — ouverte

Évaluation

Difficulté
3/5
Temps estimé
1-2 jours
Accessibilité débutants
62/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
Calme
Stack technique
java
Domaine
tooling

Piste de recherche

Commencez par reproduire le problème avec l’exemple TestBug.java et la commande google-java-format. Suivez la passe de formatage qui supprime l’importation inutilisée et gère l’espace vertical entre la déclaration du package et le Javadoc de la classe. Le travail est terminé lorsque la première passe de formatage produit une ligne vide, correspondant à la sortie attendue, sans nécessiter de seconde passe.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

When google-java-format removes an unused import statement located between a package declaration and class Javadoc or class declaration, it does not collapse the vertical whitespace in the same formatting pass. As a result, the formatted output contains extra blank lines (two consecutive blank lines instead of one).

Running google-java-format a second time on the output collapses the extra blank line as expected. We observed this in generated code, more context here: https://github.com/googleapis/librarian/issues/7146

Environment

  • google-java-format Version: Tested on 1.25.2 through 1.35.0 (including recent builds).
  • Operating System: Linux / macOS / Cross-platform

Minimal Reproducible Example

Input Code (TestBug.java)
```java                                                                                                                                                                                 
package com.example;                                                                                                                                                                    

import static io.grpc.MethodDescriptor.generateFullMethodName;

/**
 * Javadoc for class.
 */
public class TestBug {
}
Command Executed
google-java-format TestBug.java

Actual Output (First Pass)

package com.example;


/** Javadoc for class. */
public class TestBug {}

(Notice the two consecutive empty lines between package com.example; and /** Javadoc for class. */.)

Expected Output

package com.example;

/** Javadoc for class. */
public class TestBug {}

Additional Context & Workaround

• Second Pass Result: Executing google-java-format a second time on the first pass output (google-java-format TestBug.java | google-java-format -) produces the correct output with a single blank line.

Langage dominant
Java
Étoiles
6.2k
Forks
940
Merge moyen
5 min
PR mergées (30 j)
7

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de google/google-java-format

Toutes les issues de google/google-java-format

Issues similaires

Plus d'issues Java

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.