2012-02-02 7 views
6

Zależność mojego projektu Grails (moduł, który buduję) generuje plik zip jako część procesu budowania (do konsumpcji przez flex app) za pomocą wtyczki maven-assembly. Ten zip jest wyjście do mojego lokalnego repo mvn w tym samym katalogu co słoik, który jest wyjście z budynku modułu tjGrails interpretuje zip w moim repo jako wtyczce, chociaż w rzeczywistości nie jest to wtyczka

.m2/repository/com/mypackage/domain/1.0.0-SNAPSHOT/domain-1.0.0-SNAPSHOT.jar 
.m2/repository/com/mypackage/domain/1.0.0-SNAPSHOT/domain-1.0.0-SNAPSHOT-generated-tos.zip 

Ponieważ moduł jest (przechodni) zależność w moim projekcie grails, słoik i zip są oba są buforowane w pamięci podręcznej bluszcza

Teraz, gdy próbuję uruchomić moją aplikację Grails, Grails wydaje się wykrywać ten zip z pamięci podręcznej bluszczu i próbować zainstalować go jako wtyczkę, która z oczywistych powodów nie działa ...

| Loading Grails 2.0.0 
| Configuring classpath. 
| Environment set to development..... 
| Error Zip ~/.grails/ivy-cache/com.mypackage/domain/zips/domain-1.0.0-SNAPSHOT-generated-tos.zip is not a valid plugin 

Konieczne jest skompresowanie suwaka t do repozytorium, ponieważ inny moduł używa wtyczki mvn-dependency do rozpakowania go jako części procesu budowania. W związku z tym muszę znaleźć sposób, aby powiedzieć Grailsowi, aby go zignorował, ponieważ nie jest to zip wtyczki. czy to możliwe?

+0

Jay, czy kiedykolwiek rozwiązać ten problem? W tej chwili mam podobny problem. – jboutros

+0

Przepraszam, powinienem był odpowiedzieć na to wieki temu - wydaje mi się, że udało mi się skonfigurować wtyczkę maven-assembly, aby spakować wygenerowane pliki ActionScript jako plik rar zamiast zip, co rozwiązało problem z tłumaczeniem go przez Grails jako wtyczkę. Minęło trochę czasu, odkąd zrobiłem to teraz, więc nie mam rozwiązania do ręki - przepraszam. –

Odpowiedz

0

To dlatego, że w grailsach pakowanie wtyczek jest domyślnie zip, a każde archiwum zależne od tego formatu będzie uważane za wtyczkę.

Postaraj się wyłącza przechodnia domyślnie:

def excludes = { 
    transitive = false 
} 
0

bez badań to Przypuszczam, że to wszystko zrobić z konfiguracji BuildConfig.groovy.

Rzeczy umieszczone w bloku zależności powinny być dołączone w niezmienionej postaci, podczas gdy rzeczy w bloku wtyczek są uważane za zip wtyczki.

Natknąłem się na problem, gdy źle skonfigurowałem projekt. Poniższy przykład nie jest testowany :)

dependencies { 
    compile "my.project:artifact:0.1.0:zip" 
} 
plugins { 
    compile "my.project:artifact:0.1.0" // Automatic found as a zip project 

}

Powiązane problemy