Java EE için oldukça yeni ve dağıtım sürecinin yavaşlığı ile mücadele ediyor ve yanlış bir şey yapıp yapmadığımı merak ediyorum. Koddaki değişikliklerin hemen gerçekleştiği Django'yla deneyimliyim ve Java EE uygulamalarının yayılımının biraz kafa karıştırıcı olduğu görülüyor - sıcak dağıtımı iddia eden birçok şey var (Glassfish, Eclipse manic hotdeploy, Jetty hotdeploy, JRebel vb.)).Java EE uygulamalarını hemen redeploying
Projem bir Maven projesidir ve dağıtmak için Netbeans kullanıyorum. Sitede İlkbahar, JSF ve Hazırda Bekleme çerçeveleri kullanılıyor.
Netbeans'de, Deploy on Depeat, Kaydetme, aşağıdaki ekran görüntüsüne göre etkinleştiriliyor, ancak/unclicking seçeneğinin benim pom.xml'imden bilgi aldığını iddia ettiğimden dolayı mümkün değil (pompamda böyle bir alan yok) .xml (yalnızca bağımlılıklar)).
Şimdi, bazı dosyalarda yapılan değişiklikler hemen etkili görünüyor. Bunlar: - JSF dosyaları - Statik dosyaları
aşağıdakideğişiklikler konuşlandırılmasını gerektirir: - Herhangi bir XML dosyası - mülkler, bile lokalizasyon özelliklerini dosyaları dosya - olanlara
Değişiklikler beni gerektiren herhangi java dosyasını 'u manuel olarak dağıtmak ve şu anda yalnızca 2-3 sınıfım olsa bile, yalnızca bir kullanıcı sınıfı ve bir yetkilendirme sınıfı olmak üzere redeploying yarım dakika sürer. Proje şu anda sadece girişlere izin veriyor ve buna rağmen derleme birkaç saniye sürüyor; ve konteyner (Glassfish) yaklaşık 600 MB RAM tüketiyor gibi görünüyor ve hatta birkaç dağıtım sonra PermGen hataları verir ve Görev Yöneticisi'ni kullanarak java işlemini öldürmek gerekiyor. (Bunun, her bir yeniden dağıtmadan sonra sızan çöp toplayıcıyla ilgili olduğunu okudum ve bir profil oluşturmak için jhat kullanmıştım, fakat binlerce sınıfın, sınıflarımın, Baharın, Hazırda bekletme sınıflarının bir listesiyle sunulmuştu.)
Jrebel'i de duydum ve çalıştırmayı denedim, ancak Netbeans sürümüyle (7.0) uyumlu olmadığı ve çalıştırıldığı görünse de, herhangi bir java dosyasına yapılan herhangi bir değişikliğin hala bir yeniden dağıtım gerektirdiği görülüyor.
Bu sorunları gidermek için yapabileceğim bir şey var mı, yoksa Java EE'de herhangi bir Java dosyasına yapılan her değişiklikten sonra yaklaşık 1 dakika beklemek normal mi? Bu konu verimliliği önemli ölçüde öldürüyor.
İşte uygulamayı dağıtırken benim GlassFish çıktısı: http://pastebin.com/7FhZ6AVh
"Kod Değişikliklerini Uygula", hotswap'dir. Bir sınıf imzasını değiştirirseniz işe yaramaz. – Daniel