I’m fairly new to Vaadin but found it intuitive and powerful, really fits our needs well. Recently, however we ran into prblems when trying to include more add-ons in one of the projects where the build model used Ant (the Ant plugin for Maven; build-widgetset.xml). We exchanged that for the GWT and Vaadin plugins for Maven to build the widget set without Ant and it works like a charm when building locally.
However, our build system is set up in TeamCity and distributes builds to our various environments. When building in TeamCity - using the exact same goals - the widgets aren’t rebuilt!
This is the output of the relevant project when built locally (Maven 3.2.5):
[INFO]
--- gwt-maven-plugin:2.4.0:compile (default-cli) @ reforce-fasthi-common ---
[INFO]
auto discovered modules [org.vaadin.hene.popupbutton.widgetset.PopupbuttonWidgetset, org.vaadin.jouni.animator.AnimatorWidgetset]
[WARNING]
Don't declare gwt-dev as a project dependency. This may introduce complex dependency conflicts
[INFO]
Compiling module org.vaadin.hene.popupbutton.widgetset.PopupbuttonWidgetset
[INFO]
Scanning for additional dependencies: jar:file:/C:/Users/Dan/.m2/repository/com/vaadin/vaadin/6.8.7/vaadin-6.8.7.jar!/com/vaadin/terminal/gwt/client/WidgetSet.java
[INFO]
Computing all possible rebind results for 'com.vaadin.terminal.gwt.client.WidgetMap'
[INFO]
Rebinding com.vaadin.terminal.gwt.client.WidgetMap
[INFO]
Invoking generator com.vaadin.terminal.gwt.widgetsetutils.EagerWidgetMapGenerator
[INFO]
Detecting Vaadin components in classpath to generate WidgetMapImpl.java ...
[ERROR]
jan 16, 2015 4:08:34 EM com.vaadin.terminal.gwt.widgetsetutils.ClassPathExplorer getPaintablesHavingWidgetAnnotation
[ERROR]
INFO: Searching for paintables..
[ERROR]
jan 16, 2015 4:08:36 EM com.vaadin.terminal.gwt.widgetsetutils.ClassPathExplorer getPaintablesHavingWidgetAnnotation
[ERROR]
INFO: Search took 1263ms
[INFO]
Widget set will contain implementations for following components:
[INFO]
com.vaadin.ui.AbsoluteLayout
[INFO]
com.vaadin.ui.Accordion
[INFO]
com.vaadin.ui.Audio
[INFO]
com.vaadin.ui.Button
[INFO]
com.vaadin.ui.CheckBox
[INFO]
com.vaadin.ui.ComboBox
[INFO]
com.vaadin.ui.CssLayout
[INFO]
com.vaadin.ui.CustomComponent
[INFO]
com.vaadin.ui.CustomLayout
[INFO]
com.vaadin.ui.DateField
[INFO]
com.vaadin.ui.DragAndDropWrapper
[INFO]
com.vaadin.ui.Embedded
[INFO]
com.vaadin.ui.Form
[INFO]
com.vaadin.ui.FormLayout
[INFO]
com.vaadin.ui.GridLayout
[INFO]
com.vaadin.ui.HorizontalLayout
[INFO]
com.vaadin.ui.HorizontalSplitPanel
[INFO]
com.vaadin.ui.InlineDateField
[INFO]
com.vaadin.ui.Label
[INFO]
com.vaadin.ui.Link
[INFO]
com.vaadin.ui.ListSelect
[INFO]
com.vaadin.ui.MenuBar
[INFO]
com.vaadin.ui.NativeButton
[INFO]
com.vaadin.ui.NativeSelect
[INFO]
com.vaadin.ui.OptionGroup
[INFO]
com.vaadin.ui.OrderedLayout
[INFO]
com.vaadin.ui.Panel
[INFO]
com.vaadin.ui.PasswordField
[INFO]
com.vaadin.ui.PopupView
[INFO]
com.vaadin.ui.ProgressIndicator
[INFO]
com.vaadin.ui.RichTextArea
[INFO]
com.vaadin.ui.Select
[INFO]
com.vaadin.ui.Slider
[INFO]
com.vaadin.ui.SplitPanel
[INFO]
com.vaadin.ui.TabSheet
[INFO]
com.vaadin.ui.Table
[INFO]
com.vaadin.ui.TextArea
[INFO]
com.vaadin.ui.TextField
[INFO]
com.vaadin.ui.Tree
[INFO]
com.vaadin.ui.TreeTable
[INFO]
com.vaadin.ui.TwinColSelect
[INFO]
com.vaadin.ui.Upload
[INFO]
com.vaadin.ui.UriFragmentUtility
[INFO]
com.vaadin.ui.VerticalLayout
[INFO]
com.vaadin.ui.VerticalSplitPanel
[INFO]
com.vaadin.ui.Video
[INFO]
com.vaadin.ui.Window
[INFO]
org.vaadin.artur.icepush.ICEPush
[INFO]
Done. (1seconds)
[INFO]
Scanning for additional dependencies: jar:file:/C:/Users/Dan/.m2/repository/com/vaadin/vaadin/6.8.7/vaadin-6.8.7.jar!/com/vaadin/terminal/gwt/client/ui/dd/VAcceptCriteria.java
[INFO]
Computing all possible rebind results for 'com.vaadin.terminal.gwt.client.ui.dd.VAcceptCriterionFactory'
[INFO]
Rebinding com.vaadin.terminal.gwt.client.ui.dd.VAcceptCriterionFactory
[INFO]
Invoking generator com.vaadin.terminal.gwt.widgetsetutils.AcceptCriteriaFactoryGenerator
[INFO]
Detecting available criteria ...
[INFO]
creating mapping for com.vaadin.event.dd.acceptcriteria.TargetDetailIs
[INFO]
creating mapping for com.vaadin.event.dd.acceptcriteria.Not
[INFO]
creating mapping for com.vaadin.ui.AbstractSelect.AcceptItem
[INFO]
creating mapping for com.vaadin.event.dd.acceptcriteria.ContainsDataFlavor
[INFO]
creating mapping for com.vaadin.event.dd.acceptcriteria.SourceIsTarget
[INFO]
creating mapping for com.vaadin.event.dd.acceptcriteria.SourceIs
[INFO]
creating mapping for com.vaadin.ui.Tree.TreeDropCriterion
[INFO]
creating mapping for com.vaadin.event.dd.acceptcriteria.Or
[INFO]
creating mapping for com.vaadin.event.dd.acceptcriteria.AcceptAll
[INFO]
creating mapping for com.vaadin.ui.Table.TableDropCriterion
[INFO]
creating mapping for com.vaadin.event.dd.acceptcriteria.And
[INFO]
creating mapping for com.vaadin.event.dd.acceptcriteria.ServerSideCriterion
[INFO]
creating mapping for com.vaadin.ui.AbstractSelect.TargetItemIs
[INFO]
creating mapping for com.vaadin.ui.Tree.TargetInSubtree
[INFO]
Done. (0seconds)
[INFO]
Compiling 6 permutations
[INFO]
Compiling permutation 0...
[INFO]
Process output
[INFO]
Compiling
[INFO]
Compiling permutation 2...
[INFO]
Process output
[INFO]
Compiling
[INFO]
Compiling permutation 1...
[INFO]
Process output
[INFO]
Compiling
[INFO]
Compiling permutation 3...
[INFO]
Compiling permutation 4...
[INFO]
Compiling
[INFO]
Compiling permutation 5...
[INFO]
Compile of permutations succeeded
[INFO]
Linking into C:\Source\fasthi\common\target\reforce-fasthi-common-0.1-SNAPSHOT\VAADIN\widgetsets\org.vaadin.hene.popupbutton.widgetset.PopupbuttonWidgetset
[INFO]
Link succeeded
[INFO]
Compilation succeeded -- 73,429s
[INFO]
Compiling module org.vaadin.jouni.animator.AnimatorWidgetset
[INFO]
Scanning for additional dependencies: jar:file:/C:/Users/Dan/.m2/repository/com/vaadin/vaadin/6.8.7/vaadin-6.8.7.jar!/com/vaadin/terminal/gwt/client/WidgetSet.java
[INFO]
Computing all possible rebind results for 'com.vaadin.terminal.gwt.client.WidgetMap'
[INFO]
Rebinding com.vaadin.terminal.gwt.client.WidgetMap
[INFO]
Invoking generator com.vaadin.terminal.gwt.widgetsetutils.EagerWidgetMapGenerator
[INFO]
Detecting Vaadin components in classpath to generate WidgetMapImpl.java ...
[ERROR]
jan 16, 2015 4:09:43 EM com.vaadin.terminal.gwt.widgetsetutils.ClassPathExplorer getPaintablesHavingWidgetAnnotation
[ERROR]
INFO: Searching for paintables..
[ERROR]
jan 16, 2015 4:09:43 EM com.vaadin.terminal.gwt.widgetsetutils.ClassPathExplorer getPaintablesHavingWidgetAnnotation
[ERROR]
INFO: Search took 24ms
[INFO]
Widget set will contain implementations for following components:
[INFO]
com.vaadin.ui.AbsoluteLayout
[INFO]
com.vaadin.ui.Accordion
[INFO]
com.vaadin.ui.Audio
[INFO]
com.vaadin.ui.Button
[INFO]
com.vaadin.ui.CheckBox
[INFO]
com.vaadin.ui.ComboBox
[INFO]
com.vaadin.ui.CssLayout
[INFO]
com.vaadin.ui.CustomComponent
[INFO]
com.vaadin.ui.CustomLayout
[INFO]
com.vaadin.ui.DateField
[INFO]
com.vaadin.ui.DragAndDropWrapper
[INFO]
com.vaadin.ui.Embedded
[INFO]
com.vaadin.ui.Form
[INFO]
com.vaadin.ui.FormLayout
[INFO]
com.vaadin.ui.GridLayout
[INFO]
com.vaadin.ui.HorizontalLayout
[INFO]
com.vaadin.ui.HorizontalSplitPanel
[INFO]
com.vaadin.ui.InlineDateField
[INFO]
com.vaadin.ui.Label
[INFO]
com.vaadin.ui.Link
[INFO]
com.vaadin.ui.ListSelect
[INFO]
com.vaadin.ui.MenuBar
[INFO]
com.vaadin.ui.NativeButton
[INFO]
com.vaadin.ui.NativeSelect
[INFO]
com.vaadin.ui.OptionGroup
[INFO]
com.vaadin.ui.OrderedLayout
[INFO]
com.vaadin.ui.Panel
[INFO]
com.vaadin.ui.PasswordField
[INFO]
com.vaadin.ui.PopupView
[INFO]
com.vaadin.ui.ProgressIndicator
[INFO]
com.vaadin.ui.RichTextArea
[INFO]
com.vaadin.ui.Select
[INFO]
com.vaadin.ui.Slider
[INFO]
com.vaadin.ui.SplitPanel
[INFO]
com.vaadin.ui.TabSheet
[INFO]
com.vaadin.ui.Table
[INFO]
com.vaadin.ui.TextArea
[INFO]
com.vaadin.ui.TextField
[INFO]
com.vaadin.ui.Tree
[INFO]
com.vaadin.ui.TreeTable
[INFO]
com.vaadin.ui.TwinColSelect
[INFO]
com.vaadin.ui.Upload
[INFO]
com.vaadin.ui.UriFragmentUtility
[INFO]
com.vaadin.ui.VerticalLayout
[INFO]
com.vaadin.ui.VerticalSplitPanel
[INFO]
com.vaadin.ui.Video
[INFO]
com.vaadin.ui.Window
[INFO]
org.vaadin.artur.icepush.ICEPush
[INFO]
Done. (0seconds)
[INFO]
Scanning for additional dependencies: jar:file:/C:/Users/Dan/.m2/repository/com/vaadin/vaadin/6.8.7/vaadin-6.8.7.jar!/com/vaadin/terminal/gwt/client/ui/dd/VAcceptCriteria.java
[INFO]
Computing all possible rebind results for 'com.vaadin.terminal.gwt.client.ui.dd.VAcceptCriterionFactory'
[INFO]
Rebinding com.vaadin.terminal.gwt.client.ui.dd.VAcceptCriterionFactory
[INFO]
Invoking generator com.vaadin.terminal.gwt.widgetsetutils.AcceptCriteriaFactoryGenerator
[INFO]
Detecting available criteria ...
[INFO]
creating mapping for com.vaadin.event.dd.acceptcriteria.TargetDetailIs
[INFO]
creating mapping for com.vaadin.event.dd.acceptcriteria.Not
[INFO]
creating mapping for com.vaadin.ui.AbstractSelect.AcceptItem
[INFO]
creating mapping for com.vaadin.event.dd.acceptcriteria.ContainsDataFlavor
[INFO]
creating mapping for com.vaadin.event.dd.acceptcriteria.SourceIsTarget
[INFO]
creating mapping for com.vaadin.event.dd.acceptcriteria.SourceIs
[INFO]
creating mapping for com.vaadin.ui.Tree.TreeDropCriterion
[INFO]
creating mapping for com.vaadin.event.dd.acceptcriteria.Or
[INFO]
creating mapping for com.vaadin.event.dd.acceptcriteria.AcceptAll
[INFO]
creating mapping for com.vaadin.ui.Table.TableDropCriterion
[INFO]
creating mapping for com.vaadin.event.dd.acceptcriteria.And
[INFO]
creating mapping for com.vaadin.event.dd.acceptcriteria.ServerSideCriterion
[INFO]
creating mapping for com.vaadin.ui.AbstractSelect.TargetItemIs
[INFO]
creating mapping for com.vaadin.ui.Tree.TargetInSubtree
[INFO]
Done. (0seconds)
[INFO]
Compiling 6 permutations
[INFO]
Compiling permutation 0...
[INFO]
Process output
[INFO]
Compiling
[INFO]
Compiling permutation 1...
[INFO]
Process output
[INFO]
Compiling
[INFO]
Compiling permutation 2...
[INFO]
Process output
[INFO]
Compiling
[INFO]
Compiling permutation 3...
[INFO]
Compiling permutation 4...
[INFO]
Compiling
[INFO]
Compiling permutation 5...
[INFO]
Compile of permutations succeeded
[INFO]
Linking into C:\Source\fasthi\common\target\reforce-fasthi-common-0.1-SNAPSHOT\VAADIN\widgetsets\org.vaadin.jouni.animator.AnimatorWidgetset
[INFO]
Link succeeded
[INFO]
Compilation succeeded -- 56,420s
Works well. Also works if we build locally and deploy to an environment (production, stage or similar).
But when we build it via TeamCity:
[15:21:59]
[se.reforce:reforce-fasthi-core]
[INFO]
--- gwt-maven-plugin:2.4.0:compile (default) @ reforce-fasthi-core ---
[15:21:59]
[se.reforce:reforce-fasthi-core]
[INFO]
auto discovered modules [org.vaadin.cssinject.Cssinject_addonWidgetset, org.vaadin.jouni.animator.AnimatorWidgetset, com.invient.vaadin.charts.widgetset.InvientChartsWidgetset, org.vaadin.artur.icepush.IcepushaddonWidgetset, org.vaadin.hene.popupbutton.widgetset.PopupbuttonWidgetset, org.tepi.filtertable.gwt.FilterTableWidgetset, com.vaadin.terminal.gwt.DefaultWidgetSet]
[15:21:59]
[se.reforce:reforce-fasthi-core]
[WARNING]
Don't declare gwt-dev as a project dependency. This may introduce complex dependency conflicts
[15:21:59]
[se.reforce:reforce-fasthi-core]
[INFO]
org.vaadin.cssinject.Cssinject_addonWidgetset has no EntryPoint - compilation skipped
[15:21:59]
[se.reforce:reforce-fasthi-core]
[INFO]
org.vaadin.jouni.animator.AnimatorWidgetset has no EntryPoint - compilation skipped
[15:21:59]
[se.reforce:reforce-fasthi-core]
[INFO]
com.invient.vaadin.charts.widgetset.InvientChartsWidgetset has no EntryPoint - compilation skipped
[15:21:59]
[se.reforce:reforce-fasthi-core]
[INFO]
org.vaadin.artur.icepush.IcepushaddonWidgetset has no EntryPoint - compilation skipped
[15:21:59]
[se.reforce:reforce-fasthi-core]
[INFO]
org.vaadin.hene.popupbutton.widgetset.PopupbuttonWidgetset has no EntryPoint - compilation skipped
[15:21:59]
[se.reforce:reforce-fasthi-core]
[INFO]
org.tepi.filtertable.gwt.FilterTableWidgetset has no EntryPoint - compilation skipped
[15:21:59]
[se.reforce:reforce-fasthi-core]
[INFO]
com.vaadin.terminal.gwt.DefaultWidgetSet has no EntryPoint - compilation skipped
[15:21:59]
[se.reforce:reforce-fasthi-core]
[INFO]
[15:21:59]
[se.reforce:reforce-fasthi-core]
[INFO]
--- maven-jar-plugin:2.3.2:jar (default-jar) @ reforce-fasthi-core ---
It says “no EntryPoint” and nothing is built. Any ideas why?
I’ve tried celaning the Maven repos so there should be no leftovers disturbing the process.