Removing third party jars from gwt-servlet.jar.
Review at http://gwt-code-reviews.appspot.com/1047802
Review by: jat@google.com
git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@9136 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/distro-source/build.xml b/distro-source/build.xml
index 1bb9439..7918e52 100755
--- a/distro-source/build.xml
+++ b/distro-source/build.xml
@@ -22,6 +22,7 @@
<zipfileset file="${gwt.build.lib}/gwt-dev.jar" prefix="${project.distname}" />
<zipfileset file="${gwt.build.lib}/gwt-user.jar" prefix="${project.distname}" />
<zipfileset file="${gwt.build.lib}/gwt-servlet.jar" prefix="${project.distname}" />
+ <zipfileset file="${gwt.build.lib}/gwt-servlet-deps.jar" prefix="${project.distname}" />
<zipfileset file="${gwt.build.lib}/gwt-benchmark-viewer.war" prefix="${project.distname}" />
<zipfileset file="${gwt.build.lib}/gwt-soyc-vis.jar" prefix="${project.distname}" />
<zipfileset file="${gwt.build.lib}/gwt-api-checker.jar" prefix="${project.distname}" />
diff --git a/samples/validation/build.xml b/samples/validation/build.xml
index 03f7a24..6c25136 100755
--- a/samples/validation/build.xml
+++ b/samples/validation/build.xml
@@ -20,7 +20,9 @@
<pathelement location="${gwt.tools.lib}/javax/xml/stream/stax-api-1.0-2.jar" />
</path>
<fileset id="sample.server.libs" dir="${gwt.tools.lib}">
+ <include name="javax/validation/validation-api-1.0.0.GA-sources.jar" />
<include name="hibernate/validator/hibernate-validator-4.1.0.Final.jar" />
+ <include name="hibernate/validator/hibernate-validator-4.1.0.Final-sources.jar" />
<include name="apache/log4j/log4j-1.2.16.jar" />
<include name="slf4j/slf4j-api/slf4j-api-1.6.1.jar" />
<include name="slf4j/slf4j-log4j12/slf4j-log4j12-1.6.1.jar" />
diff --git a/servlet/build.xml b/servlet/build.xml
index 6440445..5a90138 100755
--- a/servlet/build.xml
+++ b/servlet/build.xml
@@ -7,7 +7,18 @@
<property.ensure name="gwt.user.build" location="${gwt.build.out}/user" />
<property.ensure name="gwt.user.bin" location="${gwt.user.build}/bin" />
- <target name="build" description="Packages this project into a jar">
+ <property name="project.lib.deps"
+ location="${gwt.build.lib}/gwt-${ant.project.name}-deps.jar" />
+
+ <target name="build" description="Packages this project into a jar"
+ depends="-servlet, -deps" />
+
+ <target name="clean" description="Cleans this project's intermediate and output files">
+ <delete file="${project.lib}" />
+ <delete file="${project.lib.deps}" />
+ </target>
+
+ <target name="-servlet" description="Packages this project into a jar">
<mkdir dir="${gwt.build.lib}" />
<gwt.jar>
<fileset dir="${gwt.user.bin}">
@@ -21,13 +32,15 @@
<exclude name="com/google/gwt/junit/server/**" />
<exclude name="com/google/gwt/benchmarks/*" />
</fileset>
+ </gwt.jar>
+ </target>
+
+ <target name="-deps" description="Packages this project's dependencies into a jar">
+ <mkdir dir="${gwt.build.lib}" />
+ <gwt.jar destfile="${project.lib.deps}">
<!-- The following two jars satisfy RequestFactory dependencies. -->
<zipfileset src="${gwt.tools.redist}/json/r2_20080312/json-1.5.jar" />
<zipfileset src="${gwt.tools.lib}/javax/validation/validation-api-1.0.0.GA.jar" />
</gwt.jar>
</target>
-
- <target name="clean" description="Cleans this project's intermediate and output files">
- <delete file="${project.lib}" />
- </target>
</project>
diff --git a/user/src/com/google/gwt/user/tools/WebAppCreator.java b/user/src/com/google/gwt/user/tools/WebAppCreator.java
index e02f4d7..4b8debc 100644
--- a/user/src/com/google/gwt/user/tools/WebAppCreator.java
+++ b/user/src/com/google/gwt/user/tools/WebAppCreator.java
@@ -369,6 +369,15 @@
replacements.put("@testFolder", testFolder);
replacements.put("@warFolder", warFolder);
+ // Add command to copy gwt-servlet-deps.jar into libs, unless this is a
+ // maven project. Maven projects should include libs as maven dependencies.
+ String copyServletDeps = "";
+ if (!maven) {
+ copyServletDeps = "<copy todir=\"" + warFolder + "/WEB-INF/lib\" "
+ + "file=\"${gwt.sdk}/gwt-servlet-deps.jar\" />";
+ }
+ replacements.put("@copyServletDeps", copyServletDeps);
+
// Collect the list of server libs to include on the eclipse classpath.
StringBuilder serverLibs = new StringBuilder();
if (libDir.exists()) {
diff --git a/user/src/com/google/gwt/user/tools/project.ant.xmlsrc b/user/src/com/google/gwt/user/tools/project.ant.xmlsrc
index a1dd654..dacddf7 100644
--- a/user/src/com/google/gwt/user/tools/project.ant.xmlsrc
+++ b/user/src/com/google/gwt/user/tools/project.ant.xmlsrc
@@ -17,6 +17,7 @@
<target name="libs" description="Copy libs to WEB-INF/lib">
<mkdir dir="@warFolder/WEB-INF/lib" />
<copy todir="@warFolder/WEB-INF/lib" file="${gwt.sdk}/gwt-servlet.jar" />
+ @copyServletDeps
<!-- Add any additional server libs that need to be copied -->
</target>