2010-06-17 18 views
9

OSGi'yi ve son zamanlarda Groovy hakkında bir şeyler öğreniyorum ama her ikisine de çok yeniyim. Groovy'nin Grails çerçevesinin bir parçası olduğunu ve Grails'in hızlı gelişim için iyi olduğunu biliyorum. OSGi'deki en çok istenen özelliklerden biri sınıf yükleyici yönetimi ve bunun muhtemelen Grails'le ilgili bir sorun olduğuna inanıyorum (eğer yanlışsa düzeltin). Bu yüzden, bir OSGI ortamında Groovy ve/veya Grails çalıştırmak mümkün veya meraklı mıyım merak ediyorum?Groovy + OSGi veya Grails?

cevap

6

Bir Grails uygulamasını, SpringSource'un dm sunucusunda dağıtılabilen bir OSGi paketine dönüştüren bir Grails plugin kullanılabilir. Eklenti yazar ayrıca, OSGi ile Grails entegrasyonu hakkında bazı blog posts yayınladı. Ancak, anlayabildiğim kadarıyla, Grants çerçevesinin OSGi desteği hala oldukça sınırlıdır ve Grails 2.0 ile "doğal olarak" desteklenecektir.

3

Benim düşünceme göre, bir OSGi kabında çalıştırabilmeniz dışında, tüm uygulamanızı bir OSGi paketi olarak paketlemenin gerçek bir yararı yoktur. Uygulamanızı daha modüler yapmaz, çünkü hala büyük bir pakettir. OSGi'yi kullanmanın, sınıf yüklemesi ile ilgili hiçbir şeyi basitleştirmeyeceğini unutmayın. Bir OSGi ortamında çalışacak şekilde tasarlanmamış olan kütüphaneleri kullanırken sorunlara neden olabilir. Bunu yapmak için iyi bir nedeniniz olmadıkça kullanmayın. Bu büyük bir teknolojidir, ama sadece içinde bırakarak şey daha basit ya da daha iyi yapmaz ben başka bir yol etrafında daha tercih edilebilir olduğunu düşünüyorum eğilimindedir

0

. Gorm veya bir in GSP çalıştırmak gibi Grails modülleri, let OSGi kabı. Tüm Groovy veya Grails kavanozları (şimdi eklentilerden ziyade modüllerdir) zaten OSGi uyumludur, bu yüzden bunları çalışan bir kapsayıcıya yüklemek bir sorun olmamalıdır. Böylece hem ekosistemlerin avantajlarını birleştirebilirsiniz. Diğer yandan, büyük bir monolitik paket olarak paketlenmiş bir uygulamayı bir OSGi konteynerine yerleştirmek, tomcat'e göre çok fazla fark yaratmaz.