我有一个使用vaadin插件和gradle配置的spring-vaadin项目。将V-Leaflet添加到我的项目第一次工作,但后来它破了,widgetset再也没有编译过了。编译失败报告它找不到杰克逊:
:vaadinPluginVersionCheck SKIPPED
:compileJava
:vaadinUpdateWidgetset
:processResources UP-TO-DATE
:classes
:vaadinClassPathJar UP-TO-DATE
:vaadinCompile
Errors in 'org/vaadin/addon/leaflet/shared/Point.java'
Line 37: JsonValue cannot be resolved to a type
Line 3: The import com.fasterxml cannot be resolved
Aborting compile due to errors in some input files
FAILED
以下是gradle依赖项部分中的相关部分:
compile 'com.fasterxml.jackson.core:jackson-core:2.9.7'
compile 'com.fasterxml.jackson.core:jackson-annotations:2.9.7'
vaadinCompile 'org.peimari:g-leaflet:+' //For v-leaflet
compile 'org.vaadin.addon:v-leaflet:+' //For map fields
我已经尝试过使用vaadinCompile,编译和实现所有这些。
我解决了这个问题。
我不确切知道发生了什么,但我通过更新所有内容并在vaaddin编译中删除对传递依赖项的直接访问来解决它。
最终的gradle脚本是:
vaadinCompile 'org.vaadin.addon:v-leaflet:2.0.9'
compile 'org.vaadin.addon:v-leaflet:2.0.9'
只添加vaadinCompile部分解决了jar并从gradle运行的问题,但我还必须添加compile指令,以便eclipse可以在类路径上找到v-leaflet类。