2014-09-25 16 views
5

Ben groovy-all-2.1.5.jar ile Eclipse-Groovy eklenti gemiler en yeni sürümü (2.8.0) kullanıyorum. Benim Groovy projeye Guice eklendi ve ben Eclipse içinden bunları çalıştırmak için gittiğimde konsol çıkışında şu hatayı alıyorum: ShortTypeHandling 2.3.x. kadar eklenmedi çünkü bu kadarEclipse-Groovy eklentisi Groovy kütüphaneleri nasıl değiştirilir?

Caught: java.lang.NoClassDefFoundError: org/codehaus/groovy/runtime/typehandling/ShortTypeHandling 
java.lang.NoClassDefFoundError: org/codehaus/groovy/runtime/typehandling/ShortTypeHandling 
    at net.me.myapp.utils.restclient.RestClient.<init>(RestClient.groovy:57) 
    at net.me.myapp.inject.UserServiceClientModule.configure(UserServiceClientModule.groovy:34) 
    at com.google.inject.AbstractModule.configure(AbstractModule.java:59) 
    at com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:223) 
    at com.google.inject.spi.Elements.getElements(Elements.java:101) 
    at com.google.inject.internal.InjectorShell$Builder.build(InjectorShell.java:133) 
    at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:103) 
    at com.google.inject.Guice.createInjector(Guice.java:95) 
    at com.google.inject.Guice.createInjector(Guice.java:72) 
    at com.google.inject.Guice.createInjector(Guice.java:62) 
    at net.me.myapp.UserServiceClient.<init>(UserServiceClient.groovy:37) 
    at net.me.myapp.UserServiceClient.main(UserServiceClient.groovy:45) 
Caused by: java.lang.ClassNotFoundException: org.codehaus.groovy.runtime.typehandling.ShortTypeHandling 
    ... 12 more 

göre this answer için Şimdi Eclipse projemizin sınıfyoluna groovy-all-2.3.3.jar'u eklemek istiyorum.

sorun

Ben Groovy Libraries kütüphane başlık altında kullandığı kütüphane değiştirmek için düzenleme izinlerine sahip görünmemektedir olmasıdır. Ve 2.3.3 JAR'ı yapı yoluma el ile eklediğimde şu hatayı alıyorum:

Caught: java.lang.ExceptionInInitializerError 
java.lang.ExceptionInInitializerError 
Caused by: groovy.lang.GroovyRuntimeException: Conflicting module versions. Module [groovy-all is loaded in version 2.1.5 and you are trying to load version 2.3.3 

Seçeneklerim nelerdir?

cevap

6

Groovy-Tutulma versiyonları kendi derleyiciler and are "locked" to them var. Sürümleri, Pencere> Tercihler> Groovy> Derleyiciler altında listelenenlere göre değiştirebilir, ancak AFAIK, eklentinin rasgele bir sürümüne değiştiremezsiniz. Bu, eklenti direklerinin bağırsaklarındaki groovy-all kavanozu değiştirebilir.

groovy-eclipse compiler version change

Pazara update site kullanarak yeni derleyici sürümlerini yüklemek veya gölgede olabilir


Güncelleme:, yeni Yazılım Yükleme> Yardım yoluyla ek derleyici sürümleri yüklemek Groovy güncelleme sitesini seçin ve genişletmek Extra Groovy Compilers oturum:

I. GİRİŞ güncelleme sitesini kullanıyorum

Not çünkü ben like to live dangerously.

+3

Teşekkürler @Will P (+1) - Buradaki çözümü bulmuş olabilirsiniz, ancak tutulmamda "*. 2.3.3.xx'e geçin ... *" düğmesi/seçeneği . Sadece 1.8.7 ve 2.0.7 için düğmelerim var, bu da bana yardım etmiyor çünkü 'ShortTypeHandling' 2.3.x'e kadar sunulmadı. ** * Groovy Compiler Settings * seçeneklerime nasıl yeni sürümler ekleyebileceğimi biliyor musunuz? ** Tekrar teşekkürler! – smeeb

+0

@smeeb Aynı konuya sahibim. 2.4 özelliğini yükledim ancak tercihlerime geçmek için hiçbir düğme yok. Bunu hiç çözdün mü? Teşekkürler. eclipse.ini dosyaya -clean ekleyin: – Chris

+0

Aslında Benim için çalışan bir yanıt bulundu. @Lari Hotari'ye teşekkürler (bkz. Https://stackoverflow.com/questions/21413003/groovy-compiler-mismatch-after-installation). – Chris