IntelliJ Yıldızlı (Paket) İçe Aktarmalar devre dışı bırakılsın mı?


196

Göçmen bir Eclipse IDE kullanıcısıyım ve IntelliJ IDEA 9'da yolumu öğreniyorum.

Eclipse IDE varsayılan olarak, aynı paketten 99 sınıf içe aktarana kadar yıldızlı bir içe aktarma kullanmaz, bu yüzden pratikte hiçbir zaman gerçekleşmez.

Ancak IntelliJ IDEA bunu yapmak için çok istekli görünüyor ve nasıl devre dışı bırakılacağını çözemiyorum.

Örneğin, otomatik içe aktarmak için + yazdıktan JListsonra , yalnızca belirttiğim sınıf yerine paketin tamamı içe aktarılır.ALTENTERjavax.swing

javax.swingOtomatik tamamlama dışında bırakmayı denedim , ancak bu sadece herhangi bir Swing sınıfının önerilmesini engelliyor, ki bu da karşı üretken.


IntelliJ 9? Sürüm 16 geliyor. Topluluk sürümüne geçin veya lisans satın alın.
duffymo

Yanıtlar:


311

Bu ayarı buradan yapabilirsiniz.

Gelen IDEA 14 + sekansıdır:

Settings> Editor> Code Style> Java> Imports>Class count to use import with '*'

IDEA'nın eski sürümünde:

Settings-> Java-> Code Style-> Imports->Class count to use import with '*'

Özellik devre dışı bırakılamaz. Yüksek bir değere ayarlamanız gerekir, örneğin 99.

2016.1.1 sürümünde Aşağıdaki satırları da kaldırmalısınız Packages to Use Import with '*', örn.import javax.*;


10
Şimdi hem Class count to use import with '*'ve Names count to use static import with '*'hiç kümesidir 99Eclipse'nın davranışını kopyalamak için. Teşekkürler!
Iain Samuel McLean Elder

1
Bunun yerine ayarından daha yüksek bir sayıya, bu değeri 0 olarak ayarlarsanız işe görünüyor
Alasdair McLeay

3
Eşiğin benim için yüksek olması gerekiyor. Bu eşiği 0 olarak ayarlarsam, özellik etkin kalır. En kötüsü, her yerde yıldız ithalatı ile bitiriyorum (IDEA 2017.1).
Andrew

3
0 beni yok etti, geri döndü ve 1000'e ayarladı
CodeMonkey

Bu dile özgüdür, bu yüzden bunu ya da karma bir projeyi kullanıyorsanız Kotlin'in altına koymayı unutmayın.
Steven Benitez

62

IntelliJ IDEA:

  • 14 ve 15 ve 16 EAP

    File > Settings... > Editor > Code Style > Java > Imports> Generalalanına Class count to use import with '*':/ için büyük bir sayı ekleyinNames count to use static import with '*':

    Dosya> Ayarlar ...> Editör> Kod Stili> Java> İçe Aktarma> Genel> İçe aktarmayı '*' ile kullanmak için sınıf sayısı

IntelliJ IDEA:

  • 12 ve 13

    File > Settings... > Code Style > Java > Imports> Generalalanına büyük bir sayı ekleyinClass count to use import with '*': Dosya> Ayarlar ...> Kod Stili> Java> İçe Aktarma> Genel> İçe aktarmayı '*' ile kullanmak için sınıf sayısı

    PS: yoldan Javasonra Code Style.


5
Intellij 15'e asla yıldızlı ithalat kullanmamasını söylemenin bir yolu yok mu? Sınıf sayımı belirtmeden demek istiyorum ??!
Stephen Hartley

1
Şüphelendiğim bu - ama garip görünüyor!
Stephen Hartley

Bu çılgınca. Ben gibi yıldız işaretli ithalatı. Yine dezavantajı nedir? Gerçekten mi. (Çakışan isimlerin olduğu bazı varsayımsal durumlarda değil.)
MarkHu

3
@MarkHu Birisi kodunuzu bir IDE kapsamı dışında (Github'da) görüntülediğinde, bir sınıfın hangi paketten geldiğini anlamak gerçekten zorlaşır.
Gili

1

Ayrıca paket adlarını "İçe aktarma için kullanılacak sınıf sayısı " metin kutularının hemen altındaki "* ile içe aktarma için kullanılacak paketler" liste kutusundan kaldırmanız gerekir . Swing ve AWT bence varsayılan olarak orada. Hala javax.swing ithal ediyordum. ; Sınıf sayısını 999 olarak ayarlamış olmama rağmen ekledi. Swing and Awt'u kutudan kaldırmak için eksi işareti düğmesini kullandım ve sonra çalıştı.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.