Vaadin 7.1.1 Eclipse Maven project problems.

I’ve started a new foobar project with mvn archetype:generate to make a vaadin-archetype-application with archetype version 7.1.1. The project is created seemingly fine. I do mvn package and get the ‘com.vaadin.server.widgetsetutils.ClassPathExplorer getAvailableWidgetSetsAndStylesheets’ errors but from reading other threads on here, I get that that’s apparently fine. The build also ends with a success. Next I try to run it with mvn jetty:run and when I go to localhost:8080/foobar i get the button that thanks me for clicking it. So far so good, apparently. Next I try to do Import Existing Maven Project in Eclipse. I get two errors:

Plugin execution not covered by lifecycle configuration: com.vaadin:vaadin-maven-plugin:7.1.1:compile-theme (execution: default, phase: generate-resources) pom.xml /foobar line 147 Maven Project Build Lifecycle Mapping Problem
Plugin execution not covered by lifecycle configuration: com.vaadin:vaadin-maven-plugin:7.1.1:update-theme (execution: default, phase: generate-sources) pom.xml /foobar line 147 Maven Project Build Lifecycle Mapping Problem

Does anyone happen to know what’s needed and/or might be missing for these goals to behave in Eclipse? The pom looks like this and is unchanged from the archetype generation:


<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>foo.bar</groupId>
	<artifactId>foobar</artifactId>
	<packaging>war</packaging>
	<version>1.0</version>
	<name>Vaadin Web Application</name>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<vaadin.version>7.1.1</vaadin.version>
		<vaadin.plugin.version>${vaadin.version}</vaadin.plugin.version>
	</properties>
	<repositories>
		<repository>
			<id>vaadin-addons</id>
			<url>http://maven.vaadin.com/vaadin-addons</url>
		</repository>
		<repository>
			<id>vaadin-snapshots</id>
			<url>http://oss.sonatype.org/content/repositories/vaadin-snapshots/</url>
			<releases>
				<enabled>false</enabled>
			</releases>
			<snapshots>
				<enabled>true</enabled>
			</snapshots>
		</repository>
	</repositories>
	<pluginRepositories>
		<pluginRepository>
			<id>vaadin-snapshots</id>
			<url>http://oss.sonatype.org/content/repositories/vaadin-snapshots/</url>
			<releases>
				<enabled>false</enabled>
			</releases>
			<snapshots>
				<enabled>true</enabled>
			</snapshots>
		</pluginRepository>
	</pluginRepositories>
	<dependencies>
		<dependency>
			<groupId>com.vaadin</groupId>
			<artifactId>vaadin-server</artifactId>
			<version>${vaadin.version}</version>
		</dependency>
		<dependency>
			<groupId>com.vaadin</groupId>
			<artifactId>vaadin-client-compiled</artifactId>
			<version>${vaadin.version}</version>
		</dependency>
		<!--
		  Needed when using the widgetset optimizer (custom ConnectorBundleLoaderFactory).
		  
		  For widgetset compilation, vaadin-client-compiler is automatically added on the
		  compilation classpath by vaadin-maven-plugin so normally there is no need for an
		  explicit dependency.
		-->
		<!--
		<dependency>
			<groupId>com.vaadin</groupId>
			<artifactId>vaadin-client-compiler</artifactId>
			<version>${vaadin.version}</version>
			<scope>provided</scope>
		</dependency>
		-->
		<dependency>
			<groupId>com.vaadin</groupId>
			<artifactId>vaadin-client</artifactId>
			<version>${vaadin.version}</version>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>com.vaadin</groupId>
			<artifactId>vaadin-push</artifactId>
			<version>${vaadin.version}</version>
		</dependency>
		<dependency>
			<groupId>com.vaadin</groupId>
			<artifactId>vaadin-themes</artifactId>
			<version>${vaadin.version}</version>
		</dependency>
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>javax.servlet-api</artifactId>
			<version>3.0.1</version>
			<scope>provided</scope>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<configuration>
					<source>1.6</source>
					<target>1.6</target>
				</configuration>
			</plugin>
			<!-- As we are doing "inplace" GWT compilation, ensure the widgetset -->
			<!-- directory is cleaned properly -->
			<plugin>
				<artifactId>maven-clean-plugin</artifactId>
				<version>2.4.1</version>
				<configuration>
					<filesets>
						<fileset>
							<directory>src/main/webapp/VAADIN/widgetsets</directory>
						</fileset>
					</filesets>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-war-plugin</artifactId>
				<version>2.2</version>
				<configuration>
					<failOnMissingWebXml>false</failOnMissingWebXml>
				</configuration>
			</plugin>
			<plugin>
				<groupId>com.vaadin</groupId>
				<artifactId>vaadin-maven-plugin</artifactId>
				<version>${vaadin.plugin.version}</version>
				<configuration>
					<extraJvmArgs>-Xmx512M -Xss1024k</extraJvmArgs>
					<!-- <runTarget>mobilemail</runTarget> -->
					<!-- We are doing "inplace" but into subdir VAADIN/widgetsets. This 
						way compatible with Vaadin eclipse plugin. -->
					<webappDirectory>${basedir}/src/main/webapp/VAADIN/widgetsets
					</webappDirectory>
					<hostedWebapp>${basedir}/src/main/webapp/VAADIN/widgetsets
					</hostedWebapp>
					<noServer>true</noServer>
					<!-- Remove draftCompile when project is ready -->
					<draftCompile>false</draftCompile>
					<compileReport>true</compileReport>
					<style>OBF</style>
					<strict>true</strict>
					<runTarget>http://localhost:8080/</runTarget>
				</configuration>
				<executions>
					<execution>
						<configuration>
							<!-- if you don't specify any modules, the plugin will find them -->
							<!-- <modules> <module>com.vaadin.demo.mobilemail.gwt.ColorPickerWidgetSet</module> 
								</modules> -->
						</configuration>
						<goals>
							<goal>clean</goal>
							<goal>resources</goal>
							<goal>update-theme</goal>
							<goal>update-widgetset</goal>
							<goal>compile-theme</goal>
							<goal>compile</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.mortbay.jetty</groupId>
				<artifactId>jetty-maven-plugin</artifactId>
			</plugin>
		</plugins>
		<pluginManagement>
			<plugins>
				<!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
				<plugin>
					<groupId>org.eclipse.m2e</groupId>
					<artifactId>lifecycle-mapping</artifactId>
					<version>1.0.0</version>
					<configuration>
						<lifecycleMappingMetadata>
							<pluginExecutions>
								<pluginExecution>
									<pluginExecutionFilter>
										<groupId>com.vaadin</groupId>
										<artifactId>
											vaadin-maven-plugin
										</artifactId>
										<versionRange>
											[7.1.1,)
										</versionRange>
										<goals>
											<goal>resources</goal>
											<goal>update-widgetset</goal>
											<goal>compile</goal>
										</goals>
									</pluginExecutionFilter>
									<action>
										<ignore></ignore>
									</action>
								</pluginExecution>
							</pluginExecutions>
						</lifecycleMappingMetadata>
					</configuration>
				</plugin>
			</plugins>
		</pluginManagement>
	</build>
</project>

Please
create a ticket
about this if this happens with the latest archetype.

All that is needed to get rid of the warnings (which they really logically are even though m2e is calling them errors) is to add the two goals to the configuration of org.eclipse.m2e.lifecycle-mapping plug-in in your POM along with the goals that are already listed there.

It says it’s “Using following parameters for creating project from Archetype: vaadin-archetype-application:7.1.1” so I assume it’s the latest. Adding the goals to the lifecycle-mapping plugin sorted it out, thanks. I added a
ticket
. Hope the info there is enough.

Thanks, that works for me as well.

thanks, that’s works for me too!!