unused import removal leaves extra blank line between package declaration and class Javadoc / declaration
Les mainteneurs répondent en général sous 1 jour
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 62/100
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-formatVersion: Tested on1.25.2through1.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
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de google/google-java-format
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
google/google-java-format#1094 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 3/5 1-2 jours Accessibilité débutants 55/100
google/google-java-format#1478 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
google/google-java-format#1470 · 5 réactions ·
Les mainteneurs répondent en général sous 1 jour
-
IndexOutOfBoundsException - Wrong formatted content when dealing with latex StringPeut-être à nouveau libre @Amlan2000 l’a pris il y a 58 jours, et aucune pull request n’est ouverte. Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 55/100
google/google-java-format#1439 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Eclipse
Difficulté 3/5 1-2 jours Accessibilité débutants 48/100
google/google-java-format#1428 · 4 commentaires ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de google/google-java-format
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
modelcontextprotocol/java-sdk#1174 · 1 réaction ·
Les mainteneurs répondent en général sous 2 jours
-
module: core
Difficulté 2/5 1-3 heures Accessibilité débutants 77/100
bigbluebutton/bigbluebutton#26028 ·
Les mainteneurs répondent en général sous 1 jour
-
Fix SNMP4J Agent vulnerabilityOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
MetricsHub/metricshub-community#1390 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 86/100
apache/rocketmq-dashboard#6331 ·
Les mainteneurs répondent en général sous 5 jours
-
Upgrade to Commons Codec 1.23.0Ouvertestatus: team-only type: dependency-upgrade
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
spring-projects/spring-boot#52143 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour