2010-07-27 10 views
370

Gibt es eine Möglichkeit, IntelliJ zu sagen, nie Wildcard-Importe zu verwenden? Unter 'Einstellungen> Codestil> Importe' kann ich sehen, dass Sie die 'Klassenanzahl' vor IntelliJ mit Platzhalterimporten angeben können. Wenn ich jedoch keine Wildcard-Importe verwenden möchte, kann ich diese Funktionalität deaktivieren?IntelliJ: Verwenden Sie keine Platzhalterimports

Ich habe versucht, -1 oder das Feld leer zu lassen, aber das sagt nur IntelliJ immer Wildcard-Importe zu verwenden. Offensichtlich wäre eine nicht so nette Lösung, eine lächerlich hohe Zahl zu setzen, so dass Sie nie auf Wildcard-Importe stoßen würden, aber ich hatte gehofft, dass es eine schönere Möglichkeit gab, es einfach abzuschalten.

Antwort

452

Es ist offensichtlich, warum Sie dies deaktivieren möchten: Erzwingen, dass IntelliJ jeden Import einzeln aufnimmt. Es erleichtert es den Benutzern, genau herauszufinden, woher die von Ihnen verwendeten Klassen stammen.

Klicken Sie auf das Symbol "Schraubenschlüssel" in der Werkzeugleiste, öffnen Sie "Importe" unter "Codestil" und aktivieren Sie die Option "Einzelklassenimport verwenden". Sie können Einträge auch vollständig unter "Zu verwendende Pakete mit *" entfernen oder einen Schwellenwert angeben, der nur den Wert "*" verwendet, wenn die einzelnen Klassen eines Pakets diesen Schwellenwert überschreiten.

Update: in IDEA 13 "Verwendung einzelner Klassenimport" verhindert keine Platzhalterimporte. Die Lösung ist Preferences ( + , auf macOS/Ctrl +Alt + S unter Windows) zu gehen > Editor > Code Style > Java > Imports tab gesetzt Class count to use import with '*' und Names count to use static import with '*' auf einen höheren Wert. Jeder Wert über 99 scheint gut zu funktionieren.

+1

Bevor ich die hohe Zahl für die Schwelle setzte, hatte ich die Einstellungen wie Sie bereits gesagt, aber es immer noch in die Wildcard importiert (dh ich hatte "Single Class Import" verwenden) checked und entfernte alle Pakete in den "packages to import import with *" ... – digiarnie

+0

Arbeite für mich Lass mich sehen, was ich sonst noch eingestellt habe Version 9.0.3 für mich – duffymo

+0

Welchen Wert hast du als Schwelle für? Klasse Anzahl vor * wird verwendet? Ich bin auf 9.0.1 - muss möglicherweise ein Upgrade durchführen – digiarnie

25

Die obige Lösung funktionierte nicht für mich. Ich musste 'Klassenanzahl' setzen, um den Import mit '*' auf einen hohen Wert, z. 999.

229
  1. Datei \ Settings ... (Ctrl +Alt + S)
  2. Projekteinstellungen> Editor> Code-Style> Java> Import Registerkarte
  3. Set Klasse zählen zu verwendet Import mit ‚*‘-999
  4. Set Namen zählen statischen Import zu verwenden, die mit ‚*‘-999

Danach sollte die Konfiguration wie folgt aussehen: enter image description here

(Auf IntelliJ IDEA 13.x, 14.x, 15.x, 2016.x, 2017.x)

3

Wenn nicht von oben funktioniert für Sie, dann lohnt es sich zu prüfen, ob Sie irgendwelche Pakete unter Präferenz> Editor> Code-Stil> Java> Importe> zu verwendende Pakete haben Import mit "*"

0

Wenn Sie Ihre Präferenzen nicht ändern möchten, Sie können die Importe optimieren, indem Sie Strg + Wahl + o auf Mac oder Strg + Alt + o auf Windows/Linux drücken. Dadurch werden alle Importe durch einzelne Importe in cu ersetzt rrent-Datei.

+0

Diese Antwort ist falsch. – Chris

0

Verknüpfung auf Mac: Drücken Sie Befehl + Umschalttaste + A (Aktion) und geben Sie "Klassenanzahl für den Import mit *" ein Drücken Sie die Eingabetaste. Geben Sie eine höhere Zahl ein wie 999

Verwandte Themen