I want to learn how to make best use development tools such as - Maven, SVN, and Eclipse. While I know how to use these tools separately, I'm interested in learning how best to use them in concert to make deve开发者_开发技巧lopment more efficient and effective. A couple of example questions follow:
- Once you've created a project using maven, what aspects of the "maven project" do you add to the repository?
- Rather than using each of these tools separately, i.e. using maven to create project, using svn to add project, using eclipse to checkout project. Is there a way to combine those steps into a single step or plugin?
Basically, I'm looking for insight and feedback on HOW you've used the aforementioned tools in concert for efficient and effective development.
*Note: If you have experience with other versioning systems (CVS, GIT, etc.) and/or IDEs, please share your insight as well; feel free to substitute them in-place of the ones I've specified.
Thanks.
I use the m2eclipse plugin primarily for searching for maven dependencies and adding them to my project.
And I use the subclipse plugin for browsing projects in subversion. I also find the gui very helpful for merging and creating branches and tags.
Both these tools are great for "situational awareness" of the state of your maven pom.xml and/or your svn repo. But lately I'm finding that it's better if I strive to keep my builds independent of any specific IDE. For example, for me, it works better to use mvn from command line to build/test/debug/run my apps.
A few benefits of keeping build strategy separate from eclipse that I've noticed are:
- If working on a Team, each developer is free to work in his/her favorite IDE
- Keeping build separate provides more automated build. If you start using Eclipse to build your stuff, you end up having to do a lot of troubleshooting and setup inside Eclipse. If you keep the build separate, you can usually get it down to a single script to checkout and build your project
- Since builds are simpler and more automated outside of eclipse, the customer can easily do a build if needed and new developers are able to get up and running much faster
There are some books by the Pragmatic Programmers http://pragprog.com/titles on related topics, such as agile development, build automation and source control. None of them directly mentions Maven, though.
Recent versions of the major Java IDE's (Eclipse, NetBeans, IDEA) all have good support for Maven and SVN. You're not really using seperate tools if you create a new Maven project using an Eclipse wizard, and importing it in a new SVN repository using the Eclipse Team controls. Maybe try these functions out and see if they're to your liking?
You typically don't add the complete "target" folder of a Maven project to your repository, the rest should definetely go in there (including the pom.xml)
Use the plugins for eclipse :
- subclipse for svn
- m2clipse for maven
You can commit/checkout/update create modules, download dependences, build etc from eclipse.
My personnal favourite when the two plugins are installed : "checkout as maven project" (for maven modules)
精彩评论