I think there is an Ant integration for Maven, so it should be possible to
reuse existing Ant builds. But I'm not sure how well it works.

So the reasons, why Maven is easy for our GWT project is simple. We do Java
development and all our GWT modules are build as plain Java projects, as
JARs (containing a file called xxx.gwt.xml and the source code), that's it.
So our whole Maven stuff works completely as pure Java stuff like in any
other Java project to. The only point where GWT integration comes in, is
that in our web app's POM file, there is the GWT-Maven plugin configured to
compile a specified GWT module (included in a JAR, which is a
provided-scoped dependency) as JavaScript to the web-app directory (so it's
included in the WAR).
We don't use GWT unit tests, instead our code is as independent from GWT as
possible (e. g. MVP Pattern) and normal unit tests work well. We don't use
i18n Message interface generation, since it doesn't increase productivity,
we're using an IDE. We don't run anything from Maven, we're launching our
development environments from Eclipse (GWT plugin).
So at least, Maven has two roles in our project. The first is doing the
build, running the unit tests automatically, but all on top of typical Java
projects. The second is the project configuration. We're using m2eclipse
plugin to enable Eclipse configuration by Maven. Since we're doing no
special stuff, m2eclipse configures our Maven projects as simple Java
projects or web projects. There is one project containing our 'main' GWT
module, this has to be made a GWT project manually (GWT Eclipse plugin, just
do it once) to launch the hosted browser from the IDE. This works well,
except sometimes m2eclipse changes the order of the libraries in Eclipse
classpath and then hosted browser crashes, but it can be fixed easily.

I wouldn't do it another way, if I had chosen Ant or Gradle or anything
else. The rules are clear, use the power of your IDE for development (it's
not the work a build tool is made for) and keep your project a Java project.
The second point is important. You can do standard Java development with
JUnit or TestNG, standard packaging and build tool configuration and that's
exactly, what I recommend. Reduce GWT to the things it's really needed for
in your project.

Regards
Jan Ehrhardt

On Sat, Nov 28, 2009 at 11:47 PM, jbdhl <[email protected]> wrote:

> Thanks for all your insightful comments! It seems that there is no de-
> facto correct answer to my original question, so let me instead, for
> simplicity, ask for elaboration of the three following questions:
>
> * The pro-maven replies above all states something like "maven makes a
> lot of things easy", which is kind of unspecific. As far as I can see
> (and I might miss something), many of the gwt-shortcuts in maven is
> sort direct mappings to commands that are already there in gwt: e.g.
> there are already gwt commands for i18n-interface creation. Also,
> whole unittest suites can be run from within eclipse, so as far as I
> can see, maven doesn't solve any problems there. What is it that maven
> solves so elegantly that cannot be done just as elegant by using
> "naked" gwt?
>
> * Assume we start developing without maven. If we later decide to use
> maven, how complicated would you guess that the project convertion
> would be (from non-maven to maven)? That is, is it easy or complicated
> to convert an existing project to maven? Notice, there is a lot of non-
> java stuff in the project, such as shell scripts, LaTeX documents,
> Makefiles, text files, etc).
>
> * Just to be clear: does maven contain the functionality of GNU make
> or ant? Can it solve the same problems as make and ant?
>
> --
>
> You received this message because you are subscribed to the Google Groups
> "Google Web Toolkit" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected]<google-web-toolkit%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/google-web-toolkit?hl=en.
>
>
>

--

You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.


Reply via email to