如何更改 Eclipse-Groovy 插件 Groovy 库?

How to change Eclipse-Groovy plugin Groovy libraries?(如何更改 Eclipse-Groovy 插件 Groovy 库?)

本文介绍了如何更改 Eclipse-Groovy 插件 Groovy 库?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用 或eclipse市场

安装新的编译器版本<小时>

更新:通过帮助>安装新软件安装额外的编译器版本,选择Groovy更新站点并展开Extra Groovy Compilers会话:

注意我使用的是快照更新站点,因为我 喜欢危险地生活.

I am using the newest version (2.8.0) of the Eclipse-Groovy plugin that ships with groovy-all-2.1.5.jar. I added Guice to my Groovy project, and when I go to run them from inside Eclipse I get the following error in the console output:

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

According to this answer it's because ShortTypeHandling wasn't added until 2.3.x. So I would now like to attach groovy-all-2.3.3.jar to my Eclipse project's classpath.

The problem is that I don't seem to have edit permissions to change what library the Groovy Libraries library uses under the hood. And when I manually add the 2.3.3 JAR to my build path, I get the following error:

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

What are my options?

解决方案

Groovy-eclipse versions have its own compilers and are "locked" to them. You may change the versions to whatever is listed under Window > Preferences > Groovy > Compilers, but, AFAIK, you can't change to an arbitrary version of the compiler by simply changing the groovy-all jar in the guts of the plugin dir.

You can install new compiler versions using the update site or eclipse marketplace


Update: install additional compiler versions through Help > Install new Software, select Groovy update site and expand the Extra Groovy Compilers session:

Note i'm using snapshot update site, because i like to live dangerously.

这篇关于如何更改 Eclipse-Groovy 插件 Groovy 库?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:如何更改 Eclipse-Groovy 插件 Groovy 库?

基础教程推荐