我想在Eclipse中编译一个GWT项目。
我使用gwt-maven-plugin原型创建了项目。我的pom看起来很喜欢这个:
<?xml version="1.0" encoding="UTF-8"?>
http://maven.apache.org/maven-v4_0_0.xsd“&GT; 4.0.0 eSWDES - 在线 战争 电子地表水数据输入系统
<properties>
<!-- Convenience property to set the GWT version -->
<gwtVersion>2.7.0</gwtVersion>
<springVersion>3.2.3.RELEASE</springVersion>
<!-- GWT needs at least java 1.5 -->
<webappDirectory>${project.build.directory}/${project.build.finalName}</webappDirectory>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<profiles>
<profile>
<id>eSWDESOnline</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<gwt.compile.module1>com.eptisati.eswis.eswdes.app.desktop.eSWDESDesktopOnline</gwt.compile.module1>
<gwt.compile.module2>com.eptisati.eswis.eswdes.app.mobile.eSWDESMobile</gwt.compile.module2>
<war.name>eSWDES</war.name>
</properties>
<build>
<plugins>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<phase>prepare-package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<tasks>
<!-- Deleting development workarea -->
<delete file="${project.build.outputDirectory}/workareas.xml" />
<!-- Copying the proper one -->
<copy file="src/main/resources/workareas_pro.xml"
tofile="${project.build.outputDirectory}/workareas.xml" />
<!-- Deleting non used -->
<delete file="${project.build.outputDirectory}/workareas_*.xml" />
</tasks>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<dependencies>
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-servlet</artifactId>
<version>${gwtVersion}</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-user</artifactId>
<version>${gwtVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-dev</artifactId>
<version>${gwtVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.eptisati.eswis</groupId>
<artifactId>eSWDES-Controller</artifactId>
<version>${project.version}</version>
<exclusions>
<exclusion>
<groupId>org.opengis</groupId>
<artifactId>geoapi-nogenerics</artifactId>
</exclusion>
<exclusion>
<artifactId>slf4j-log4j12</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.googlecode.gwtmodernizr</groupId>
<artifactId>gwtmodernizr</artifactId>
<version>1.0.1</version>
<scope>system</scope>
<systemPath>${basedir}/gwt-user-libs/gwtmodernizr-1.0.1.jar</systemPath>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${springVersion}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${springVersion}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${springVersion}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${springVersion}</version>
</dependency>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.0.0.GA</version>
<classifier>sources</classifier>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>4.2.0.Final</version>
<exclusions>
<exclusion>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
</exclusion>
<exclusion>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- IOC commons -->
<dependency>
<groupId>com.seleniti.ioccommons</groupId>
<artifactId>ioc-commons-gwt-impl</artifactId>
<version>${ioc-commons-version}</version>
</dependency>
<dependency>
<groupId>com.seleniti.ioccommons</groupId>
<artifactId>ioc-commons</artifactId>
<version>${ioc-commons-version}</version>
</dependency>
<dependency>
<groupId>com.seleniti.ioccommons</groupId>
<artifactId>ioc-commons-ext</artifactId>
<version>${ioc-commons-version}</version>
</dependency>
<dependency>
<groupId>com.seleniti.ioccommons</groupId>
<artifactId>ioc-commons-utils</artifactId>
<version>1.1.0</version>
<!-- <version>${ioc-commons-version}</version> -->
</dependency>
<!-- IOC commons extra -->
<dependency>
<groupId>com.seleniti.ioccommons</groupId>
<artifactId>ioccommons-extra-gwt-extensions</artifactId>
<version>2.7.0.3</version>
</dependency>
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3</version>
</dependency>
<dependency>
<groupId>es.eptisati.mapviewer</groupId>
<artifactId>MapController-Openlayers21Impl</artifactId>
<version>${eptisa-mapviewer-version}</version>
<exclusions>
<exclusion>
<artifactId>slf4j-log4j12</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.googlecode.mgwt</groupId>
<artifactId>mgwt</artifactId>
<version>2.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.googlecode.gwtphonegap</groupId>
<artifactId>gwtphonegap</artifactId>
<version>3.5.0.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.3.6</version>
</dependency>
<!-- ESRI -->
<dependency>
<groupId>com.esri</groupId>
<artifactId>jpe93_sdk</artifactId>
<scope>system</scope>
<version>1.0.0</version>
<systemPath>${basedir}/lib/jpe93_sdk.jar</systemPath>
</dependency>
<dependency>
<groupId>com.esri</groupId>
<artifactId>jsde93_sdk</artifactId>
<scope>system</scope>
<version>1.0.0</version>
<systemPath>${basedir}/lib/jsde93_sdk.jar</systemPath>
</dependency>
</dependencies>
<build>
<!-- Generate compiled stuff in the folder used for developing mode -->
<outputDirectory>${webappDirectory}/WEB-INF/classes</outputDirectory>
<resources>
<resource>
<directory>src/main/java</directory>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
<plugins>
<!-- GWT Maven Plugin -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>gwt-maven-plugin</artifactId>
<version>${gwtVersion}</version>
<executions>
<execution>
<goals>
<goal>compile</goal>
<!-- <goal>test</goal> <goal>i18n</goal> -->
<goal>generateAsync</goal>
</goals>
</execution>
</executions>
<!-- Plugin configuration. There are many available options, see gwt-maven-plugin
documentation at codehaus.org -->
<configuration>
<runTarget>eswdes-desktop.html</runTarget>
<hostedWebapp>${webappDirectory}</hostedWebapp>
<!-- <i18nMessagesBundle>com.eptisati.eswis.esdes.app.online.client.Messages</i18nMessagesBundle> -->
<enableClosureCompiler>true</enableClosureCompiler>
<enableAssertions>true</enableAssertions>
<extraJvmArgs>-XX:MaxPermSize=4096m -Xmx4096m -XX:-UseSplitVerifier</extraJvmArgs>
<localWorkers>2</localWorkers>
<modules>
<module>${gwt.compile.module1}</module>
<module>${gwt.compile.module2}</module>
</modules>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>buildnumber-maven-plugin</artifactId>
<version>1.2</version>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>create</goal>
</goals>
</execution>
</executions>
<configuration>
<doCheck>true</doCheck>
<doUpdate>true</doUpdate>
</configuration>
</plugin>
<!-- Copy static web files before executing gwt:run -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.3</version>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>exploded</goal>
</goals>
</execution>
</executions>
<configuration>
<webappDirectory>${webappDirectory}</webappDirectory>
<packagingExcludes>**/*.devmode.js</packagingExcludes>
<archive>
<manifest>
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
</manifest>
<manifestEntries>
<Implementation-Build>${buildNumber}</Implementation-Build>
</manifestEntries>
</archive>
<warName>${war.name}</warName>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<encoding>${mvn.project.build.sourceEncoding}</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-scm-plugin</artifactId>
<version>1.8.1</version>
<configuration>
<connectionType>connection</connectionType>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.4.1</version><!--$NO-MVN-MAN-VER$ -->
</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>org.datanucleus</groupId>
<artifactId>maven-datanucleus-plugin</artifactId>
<versionRange>[1.1.4,)</versionRange>
<goals>
<goal>enhance</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>net.kindleit</groupId>
<artifactId>maven-gae-plugin</artifactId>
<versionRange>[0.7.3,)</versionRange>
<goals>
<goal>unpack</goal>
</goals>
</pluginExecutionFilter>
<action>
<execute />
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>
org.apache.maven.plugins
</groupId>
<artifactId>
maven-war-plugin
</artifactId>
<versionRange>
[2.3,)
</versionRange>
<goals>
<goal>exploded</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
<!-- <pluginExecution> <pluginExecutionFilter> <groupId> org.codehaus.mojo
</groupId> <artifactId> gwt-maven-plugin </artifactId> <versionRange> [2.7.0,)
</versionRange> <goals> <goal>i18n</goal> </goals> </pluginExecutionFilter>
<action> <ignore></ignore> </action> </pluginExecution> -->
<pluginExecution>
<pluginExecutionFilter>
<groupId>
org.codehaus.mojo
</groupId>
<artifactId>
exec-maven-plugin
</artifactId>
<versionRange>
[1.2,)
</versionRange>
<goals>
<goal>exec</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>2.5</version>
<configuration>
<filesets>
<fileset>
<directory>../${webappDirectory}/gwt-unitCache</directory>
<followSymlinks>false</followSymlinks>
</fileset>
<fileset>
<directory>src/main/webapp/eswdesdesktop</directory>
</fileset>
<fileset>
<directory>src/main/webapp/WEB-INF/lib</directory>
</fileset>
</filesets>
</configuration>
<executions>
<execution>
<id>gwt-unitCache</id>
<phase>clean</phase>
<goals>
<goal>clean</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</pluginManagement>
</build>
<repositories>
<repository>
<id>sonatype-oss-public</id>
<url>https://oss.sonatype.org/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<parent>
<groupId>com.eptisati.eswis</groupId>
<artifactId>eSWDES</artifactId>
<version>1.1.0-SNAPSHOT</version>
<relativePath>../eSWDES/pom.xml</relativePath>
</parent>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.vividsolutions</groupId>
<artifactId>jts</artifactId>
<version>1.12</version>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.5</version>
</dependency>
</dependencies>
</dependencyManagement>