Java developer's toolkit for greenfield development assignment
Tools listed below are mostly general options at the start of any green field development java project. I wanted to keep a personal reference but then thought to share with everyone since I have found myself always figuring out missing tools and then downloading and configuring one.An even better option is to have few virtualized images for tools that have a common access amongst all the team members. This will further reduce the need to re-install and configure the same tools again and again. Text in bold below is something that is tried and tested by me
8. Code Coverage Tools - Clover or Emma or Cobertura. Again code coverage ideally hooks itself in junit test runs and should be integrated as part of build scripts and run every time deployment artefacts are generated.
9. Code Review Tools - Jupiter (for Eclipse) or Crucible.
10. Code Quality Tools - Checkstyle AND Findbugs AND Code Coverage.
11. Project Build - Maven or ANT or Gradle.
12. Maven Essentials.
2. Apache Snapshots - http://people.apache.org/repo/m2-snapshot-repository
3. Codehaus - http://repository.codehaus.org
4. Codehaus Snapshots - http://snapshots.repository.codehaus.org/
5. JBoss - http://repository.jboss.org/maven2/
6. Eviware - http://www.eviware.com/repository/maven2
7. Java.net - http://download.java.net/maven/2
8. twdata - http://twdata-m2-repository.googlecode.com/svn/
9. Caucho - http://caucho.com/m2
13. Appplication Servers - JBoss or IBM Websphere or Oracle Weblogic or Oracle Glassfish
14. Servers for POC - Tomcat or Apache
15. Logging
17. Database - Oracle XE or MySQL or SQL Server
18. ORM API's - Hibernate or JPA or iBatis or TopLink
19. Authentication API's - JAAS or LDAP or AS Container based or SiteMinder (backed by LDAP)
20. UI Frameworks - as follows
In case of comments or criticism or missing details, please email me - [email protected]
- Decent Spec desktop to work from - At least 8 GB RAM, 2nd gen Core i7 processor and dual screens (nice to have 2 wide screens).
- Functional IDE incorporating team's comfort factor - Eclipse or IntelliJ or RAD (wink wink).
- Source Code versioning system - Subversion or Git or ClearCase or Mercurial or CVS or PVCS
- Office Tools to collaborate (real time if possible) - MS Office or Google Docs
- Various tracking tools (as follows)
- Defects - JIRA or XPlanner+ or Mercury Quality Center
- Development - XPlanner+ or GreenHopper or Mingle or Spreadsheet
- Project Management - MS Project or XPlanner+ or Tiny PM or Reporting tools within development tracking tools
- JUnit.
- HttpUnit / Selenium / Canoo Web Tests.
- Mock Objects - EasyMock or JMock or Mockito.
- XStream for mocking data in XML files.
- HSQL or Apache Derby.
- Unitils (Even allows mocking up EJB's).
8. Code Coverage Tools - Clover or Emma or Cobertura. Again code coverage ideally hooks itself in junit test runs and should be integrated as part of build scripts and run every time deployment artefacts are generated.
9. Code Review Tools - Jupiter (for Eclipse) or Crucible.
10. Code Quality Tools - Checkstyle AND Findbugs AND Code Coverage.
11. Project Build - Maven or ANT or Gradle.
12. Maven Essentials.
- Plug-ins - Code Coverage, Java Cross Reference, Surefire, Checkstyle, Javadoc, Java Compiler, War, Ear and Jar
- Repositories- as follows
2. Apache Snapshots - http://people.apache.org/repo/m2-snapshot-repository
3. Codehaus - http://repository.codehaus.org
4. Codehaus Snapshots - http://snapshots.repository.codehaus.org/
5. JBoss - http://repository.jboss.org/maven2/
6. Eviware - http://www.eviware.com/repository/maven2
7. Java.net - http://download.java.net/maven/2
8. twdata - http://twdata-m2-repository.googlecode.com/svn/
9. Caucho - http://caucho.com/m2
13. Appplication Servers - JBoss or IBM Websphere or Oracle Weblogic or Oracle Glassfish
14. Servers for POC - Tomcat or Apache
15. Logging
- General Code - Log4j or Apache Commons or slf4j
- Audit Trail - Log to a separate table within 'a' database
17. Database - Oracle XE or MySQL or SQL Server
18. ORM API's - Hibernate or JPA or iBatis or TopLink
19. Authentication API's - JAAS or LDAP or AS Container based or SiteMinder (backed by LDAP)
20. UI Frameworks - as follows
- MVC - Apache Struts or JSF (RI / MyFaces) or JBoss Seam or WebWork
- Rich - RichFaces or IceFaces or GWT
- Templating - FreeMarker or Velocity or Tapestry or Facelets
- Flex - FlashBuilder, ANT, FlexUnit, Hudson, Checkstyle
In case of comments or criticism or missing details, please email me - [email protected]
Maintained By - Ankur Gupta