Kaynak kod dosyalarının kodda kullanılmayan birçok içeriğe sahip olduğuna inanıyorum (varolan yeni dosyalara kopyalamanın kötü bir alışkanlığım olduğu için). Visual Studio'da C# yi kodlarken (veya belki de bir eklentinin bir özelliği), kullanılmayan tüm ithalatları sadece bir tıklamayla silebilirsiniz. Scala için benzer bir araç var mı? Kaynak dizinime yönlendirebilseydim ve içerideki tüm dosyaları ve tüm alt dizinlerini ve alt dizinlerini (vb.) Temizlerse harika olurdu.Scala'nın tüm kullanılmayan tüm ithalat dosyalarını tüm kod dosyalarından temizlemesi için bir araç var mı?
cevap
Bence Intellij kullanılmayan ithalatları gri olarak işaretler. Henüz otomatik bir araç olduğunu düşünmüyorum. Eclipse ve ensime'nin "ithalatı düzenle" yeniden yapılandırması, ithalatı kaldırmıyor. Tabii ki her zaman bireysel ithalatı ve yeniden derlemeyi yorumlayabilirsiniz.
IntelliJ, yalnızca bunları vurgulamakla kalmaz, tüm dizini içe aktarma işlemlerini otomatik olarak temizleyebilir. Kısayol Ctrl + Alt + O
'dur.
Tüm projem için ithalatı optimize etmesine izin verecek kadar cesur olmamıştım. Tabii ki bu her zaman geri dönebileceğinden mantıklı değil. Ama işe yarıyor mu? Çünkü otomatik ithalatlar genellikle başarısız oluyor. – ziggystar
@ziggystar Dosyalarımı temizlediğimden beri tüm dizin seçeneğini denemedim. Bazen otomatik içe aktarma başarısız olur, bu yüzden hangisini manuel olarak seçmeniz gerekir (genellikle belirsizlikler varsa) ama hiç kullanmadığım bir ithalatı hiç görmedim. –
Aslında, Scala için gerekli olan ithalatı kaldıracaktır. Bu, dolaylı olarak, örn. IntelliJ Scala eklentisi, import com.bla.common.MonadInstances._ komutunu kaldırmak isterse de sınıfım bile onsuz derlenmez. Bu yüzden, eklenti daha olgunlaşmadan kullanmayın. – Tvaroh
Scalafix bir kullanılmayan ithalat kaldırmak için yeniden yazma özelliği vardır: projenize addSbtPlugin("ch.epfl.scala" % "sbt-scalafix" % "0.5.0-M1")
eklemek https://scalacenter.github.io/scalafix/#RemoveUnusedImports
/plugins.sbt
ardından "ithalatı düzenlemek" sbt "scalafix RemoveUnusedImports"
Konu dışı bir soruyla karşılaşırsanız, sadece bir bağlantı yanıtı göndermek yerine kapatmak için oy kullanmalısınız. –
@BaummitAugen benim yazımı düzeltti. Bence konu hiç konu dışı değil. –
Ne kadar? Site dışı kaynaklar için sorulan sorular açıkça konu dışıdır. –
Eclipse çalıştırmak kullanılmayan ithalat kaldırır benim için. – Mike
Organize olarak içe aktarma, 2.0.0-beta6'dan beri ScalaIDE'ın bir özelliğidir. http://scala-ide-portfolio.assembla.com/spaces/scala-ide/wiki/Changelog –