Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Setup a GWT Project correctly with SVN and Eclipse

Tags:

eclipse

svn

gwt

I'm trying to develop a small project using Eclipse and the Google Web Toolkit. It's a (small) group project so I want to use SVN.

So far I have created a GWT Project in Eclipse and added it to my SVN Repository. The problem is that when I use 'compile' on the project, it breaks SVN's metadata and the whole war-directory is marked as broken. (Red Exclamation mark).

I then cannot commit and/or update - neither can I just ignore the war directory because of the web.xml / appengine-web.xml files which Eclipse complains about when they are missing... Cleanup also fails.

So far the problem - Does anyone of you know how to properly set up a new GWT Project with SVN? Which files need to be ignored? Which files can be committed? ...

A beginner-friendly solution would be great!

Thanks in advance

like image 561
Patrick Avatar asked Apr 14 '11 12:04

Patrick


1 Answers

In the answer below I'm assuming you're not using Maven. I tried to answer generically as well so the below should apply to any version control system (I'm on Bazaar).

You want to commit the files which constitute the application source code (e.g. *.java files) and configuration metadata (e.g. *.xml files). Some (like me) also like to commit Eclipse project configuration (.settings, .classpath and .project), even though doing so might on occasion cause some inconvenience to other team members due to differing Eclipse setups. I think the convenience of not needing to guess which Eclipse natures the project has or what's supposed to be on the classpath is worth it (Maven helps even more, but that's a separate discussion).

You want to ignore the files and folders which are build products (and hence are temporary and reproducible by nature). For GWT apps developed in Eclipse using the Google Plugin for Eclipse these are typically war/WEB-INF/classes, war/WEB-INF/deploy and war/<module_name>, where <module_name> is the name GWT uses for the folder where it places your GWT module compiled into JavaScript/HTML. You might also want to exclude .gwt where GWT dumps log information during work in Development Mode.

Also in your project directory be sure to ignore the gwt-unitCache. This is where gwt stores a manifest of what units have been compiled for re-usability.

Hope this helps.

like image 176
Boris Brudnoy Avatar answered Oct 24 '22 04:10

Boris Brudnoy