Intellij Canlı Şablon


81

Intellij'de varsayılan bir belirteç değeri kullanmanın herhangi bir yolu var mı Live templates? Örneğin, neredeyse her sınıf için oluşturmak istediğim özel bir değişkeni bildiren aşağıdaki canlı şablona sahibim:

private static final Logger logger = Logger.getLogger($CLASS$.class)

$CLASS$Bu canlı şablon her kullanıldığında, kapsam veya dosya adı olarak sınıftan türetilebileceğinden, yazmak gereksiz görünüyor . Canlı şablonlarda ortam tanımlı token'ları varsayılan olarak kullanmanın mümkün olup olmadığını merak ediyordum.

Yanıtlar:



54

log4j:

private static final org.apache.log4j.Logger log = org.apache.log4j.Logger.getLogger($CLASS_NAME$.class);

slf4j:

private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger($CLASS_NAME$.class);

Uygulanabilir bağlamı Java olarak ayarladığınızdan ve FQ adlarını kısalttığınızdan ve tanımlanmışsa atladığınızdan emin olun .


3
Değişkeni mantıklı bir varsayılanla doldurmak için bu makalede en ifadesini ayarlamak için bahsettiği eki seviyorum. coderwall.com/p/hzmhbw
Snekse

@Snekse Bu iyi bir ek. Cevabımı düzenleyerek geliştirebilirsiniz.
Nowaker

Bu cevap aslında sorucunun sorusuna cevap vermez: $CLASS_NAME$değişkeni sınıf adıyla otomatik olarak doldurmak için, değişkenle ilişkili "İfade" yi ayarlamanız $CLASS_NAME$gerekir className(). Ekran görüntüsü için CrazyCoder'in cevabına bakın.
Adil Hussain

3

log4j 2:

private static final org.apache.logging.log4j.Logger log = org.apache.logging.log4j.LogManager.getLogger($CLASS_NAME$.class);

Bu cevap aslında sorucunun sorusuna cevap vermez: $CLASS_NAME$değişkeni sınıf adıyla otomatik olarak doldurmak için, değişkenle ilişkili "İfade" yi ayarlamanız $CLASS_NAME$gerekir className(). Ekran görüntüsü için CrazyCoder'in cevabına bakın.
Adil Hussain
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.