- Java EE & Web Development
General improvement of Java EE and Web development including support for EJB 3.0 and several new frameworks such as Struts and GWT. Web development features supporting JavaScript, AJAX, HTML/CSS, XML, JSP, and JSF are also enhanced. read more » - Enhanced Swing GUI Designer
Enhanced and extended Swing GUI designer that supports different layout managers, provides many new usability features, and allows for fast and intelligent import of existing user interfaces, either hand coded or created in other UI designers.
read more » - Code Coverage Support
Integrated measurement of the code coverage for your unit tests, or tests written as simple applications with themain()
method.
read more » - Numerous Productivity & Editing Features
Among other improvements there are new code inspections for Java and Java EE, several new refactorings and intention actions (including dedicated JS IntentionPowerpack). The long-awaited searchable Settings dialog and project-wide error highlighting are now also available. read more » - Team Work Facilitation
Integration with TeamCity - a new IDE independent JetBrains product that is targeted towards both software developers and their managers, helping them to solve problems that typically bog down development teams. IntelliJ IDEA 6.0 also includes a new team collaboration tool that lets developers exchange text messages, exceptions, code pointers, and code changes without leaving the IDE. read more »
Among TeamCity's 1.0 features:
- Continuous Integration & Testing
TeamCity automates the process of running tests and integrating and building code changes made by team members. TeamCity takes care of complex test running, error handling and notifications, and integration and building chores. All a developer needs to do is submit changes to version control and continue working. Failed tests and builds are immediately reported to the people who most need to know, and are visible online for the entire team. - Build Management
Define and run different build types (nightly, periodic, etc.) with different build configurations for any project, including customizable build triggers. You can set up builds to run on any number of computers anywhere on your network. When a build is triggered (either automatically or manually) TeamCity processes it on any available agent whose environment is compatible with the build configuration. If no resources are free, the build enters a queue and is processed automatically as soon as resources are available. - Server-side Code Analysis
In addition to having TeamCity run unit tests when creating builds, builds configured as an IntelliJ IDEA project file can also have TeamCity remotely run a set of IntelliJ IDEA code inspections. Any problems found are displayed in both web interface and the IntelliJ IDEA editor just like local inspections. - Pre-tested (Delayed) Commit
Submitted code changes first go through testing. If all tests succeed, TeamCity automatically submits the changes to version control. From there, they will automatically be integrated into the next TeamCity build. If any test fails, the code is not committed, and the submitting developer gets a notification by his/her preferred means. The defective code never gets into a build, so the process of the entire team is not affected in any way. - Remote Run for Personal Builds
Developers can run personal builds remotely on TeamCity's build grid just the same as a "regular" build except that changed code is never committed to version control. If a personal build fails, no "real" build is affected, so there is never any adverse impact on the team. The developer receives immediate notification of problems and can then work on a fix. When changed code passes muster in a personal build, the developer can commit it.
Jetbrains has also posted a comparison matrix between TeamCity, CruiseControl, and CruiseContro.NET. InfoQ will be reviewing TeamCity 1.0 soon. Please post any questions about areas you would like explored to this item's comment thread.