2011-11-16 14 views
17

Grails'de, yerel eklentinin kaynaklardan nasıl ekleneceğini görebilirsiniz. docs göre, bir BuildConfig.groovy yazabilirsiniz:Grails 2.0'da yerel bir eklenti nasıl çalıştırılır?

// Useful to test plugins you are developing. 
grails.plugin.location.shiro = 
     "/home/dilbert/dev/plugins/grails-shiro" 

// Useful for modular applications where all plugins and 
// applications are in the same directory. 
grails.plugin.location.'grails-ui' = "../grails-grails-ui" 

sorun Grails 2.0.RC1 çalışmıyor olmasıdır. Eklentiyi grails install-plugin ile yüklemek ve BuildConfig.groovy'a yerleştirmek için grails clean yapmayı denedim. Hala çözemiyorum.

+0

Hangi hatayı alıyorsunuz? Ben sadece 'BuildConfig' rotasını 2.0RC1 ile denedim ve iyi çalışıyor gibi görünüyor ... Sen bir tane yapıyorsun ya da diğeri değil misin? 'Install-plugin' grants 'değil ve aynı zamanda BuildConfig.groovy' yerleştirerek? –

+1

Bu çok kolaydı. Bu 'grails.plugin.location. * Ile satır sadece eklenti yüklememelisiniz. Sadece bu lint'i BuildConfig.groovy'ye yazın ve "grails run-app" yapın! –

+0

Yükleme-eklentisini yüklemeye veya BuildConfig DSL'ye aynı anda yerleştirmeye çalışıyordum :) teşekkürler @tim_yates –

cevap

20

Bu işler için beni shiro eklentisi (değil İçinde dizinin adı) adıdır

grails.plugin.location.shiro = "/home/dilbert/dev/plugins/grails-shiro" 

. Eklentinin yolunun mutlak bir yol olduğundan veya uygulamadan eklentinin göreli yolundan emin olun.

Eklenti application.properties veya BuildConfig.groovy listelenen, bu durum bazen çalışmıyor bulundu, bu yüzden eğer, o zaman çıkarın grails clean yürütmek ve uygulamayı yeniden başlatın ettik.

+0

Bu yöntem, buildConfig.groovy'ye ekleyerek benim için çalışır. +1 ile ilgili notlar için @andruso. Eklentiniz bir tire işareti içeriyorsa, eklenti adını tırnak içine alın. Örnek: grails.plugin.location.'plugin-name-with-dashes '= "" –

0

Eklenti için .zip dosyasını/lib dosyanıza ekleyebilir ve yüklenecektir.

Örnek:

compile ":myPlugin:1.0" 

Dosya:

/lib/myPlugin-1.0.zip 

Not: eklenti klasörünün içeriğini zip zorundayız.

Kaynak: Ayrıca yerel maven önbelleğine eklentiyi kurabilirsiniz http://grails.1312388.n4.nabble.com/Insert-own-local-plugin-into-build-config-td4646704.html

+0

Bu, bir güncelleme yapıldığında dosyayı sıkıştırmanız ve değiştirmeniz gerektiğinden etkili değildir. Bu adımı unutun ve bazı kafa karıştırıcı problemleri takip edeceksin. – Joseph

+1

Notlarda çalışmıyor 2.4.0 – sikander

7

.

belgeleri bu konuda konuşuyor:

3.7.10 Deploying to a Maven Repository

maven-install 

yerel Maven önbelleğine Grails proje veya eklenti objeyi kuracak maven-install komutu:

grails maven-install

Bu, eklentiyi kullanarak ana uygulamanıza eklenti eklemenize izin verme avantajına sahiptir. e daha yaygın ":plugin-name:version" sözdizimi

Bu, uygulamanızın üretim sırasında eklentiyi almak için en iyi yeri belirlemesine olanak tanır. Bir iç maven-repo veya eşdeğerden.

1

Surround o çizgiler içeren durumunda tırnak eklenti isim: Grails 3.x ile

grails.plugin.location.'plugin-name-with-dashes' = "<path>" 
3

bunu yapmanın başka bir yolu yoktur.Aynı proje dizininde içinde bir grails uygulaması ve eklentisi (kaynak kodu) ettik düşünelim:

/my-project 
---/my-app 
---/grails-shiro 

yerel eklentisi çalıştırmak için, uygulama ve eklenti konumunu belirtiyor my-project dizininde bir settings.gradle dosyası oluşturmak gerekir :

include 'my-app', 'grails-shiro' 

Sonra uygulamanın build.gradle içinde bağımlılık ekleyin:

compile project(':grails-shiro') 

Sen yaptık.

Daha fazla bilgi için plugins documentation'a bakın.

İlgili konular