MavenPlan68
Maven Projects support plan for NetBeans 6.8
The following work is scoped for 2 full-time engineers for 2 milestones of 6.8:
P1 - #1 -Java EE 6 related changes (M2 - Milos) DONE
- new JEE 6 archetype and project customization
- any changes needed to support EE 6 spec changes
- give help to Java EE team ( JEE6Integration) but the work needed directly in Web/EE modules will have to be done by Java EE team (both for Ant and Maven at the same time)
P1 - #2 - Improved handling of misconfigured projects (M2 - dafe) DONE
- web/j2ee projects without a server configuration defined
( the simplest solution is to allow the user to write the server setting also to subprojects when they are setting it to the superproject).
P2 - #3 - Enabling common settings for more projects in corporate setups (M1) DONE
- Use archetype catalogs for easier navigation in new project wizard http://www.netbeans.org/issues/show_bug.cgi?id=154978, improves following corporate standards in the IDE (milos) DONE for 6.8, further possible improvement tracked in http://www.netbeans.org/issues/show_bug.cgi?id=171466
P2 - #4 - User feedback (M1 - milos, dafe) __DONE
- Compile on Save DONE
- improvements based on user feedback - http://www.netbeans.org/issues/show_bug.cgi?id=148499
- Avoid putting absolute paths in configurations files, resolve IDE's Global Variables (Tools/Variables) in maven execution configurations. DONE
- Maven build cannot be properly canceled - http://www.netbeans.org/issues/show_bug.cgi?id=135475 DONE
- Dependency exclusion in graphs - http://www.netbeans.org/issues/show_bug.cgi?id=167973 DONE
- Improve the "build with dependencies" build and use the new related Maven 2.1+ features http://www.netbeans.org/issues/show_bug.cgi?id=166898 DONE
- evaluation of the VOC from users after 6.7
P2 - #5 - Advanced configuration of the IDE (Connected Developer features) (M2 - needs cooperation from kenai team) PARTIALLY DONE
- Kenai projects - write to POM when creating, updating kenai projects (mailing lists, CI, SCM, Site, DistributionManagement, Bug tracking, License) (M2 - dafe) MavenKenaiInteraction68 DONE
- write CI info to POM already works in 6.7 - JesseGlick
- (P3) use POM's checkstyle configuration to bootstrap IDE's formatting rules. (always use the correct basic formatting, without any manual intervention, useful for projects like Apache etc.) (milos) DONE
P3 - #6 - UI - Artifact Viewer (M2 - dafe)
- rearrange description parts - http://www.netbeans.org/issues/show_bug.cgi?id=164973 - SKIPPED
- improve graphs layout (e.g. tree layout without gaps) (Tomas Holy) - not for 6.8 - SKIPPED
P3 - #7 - UI - Other (M1/M2)
- custom UI for renaming, deleting, copying and moving Maven projects - SKIPPED
- webservices designer from ant projects to work in maven (mkuchtiak) - SKIPPED
P3 - Discussed but out of scope in 6.8
- code coverage
- allow code coverage integration to work with maven based projects
- reuse the maven plugin (cobertura,clover,emma) configuration in the IDE
- webstart support
- migration support from Ant to Maven
- global (re)definition of action mappings (e.g. run) - #162764 - important for features we don't directly support and for making global changes according to user preferences (skip test execution on Build, perform a clean before running Test etc) (milos/dafe for ui help)
Turns out to be more complex than anticipated. In general the decision process (what definition gets used) gets more complicated and unclear to the user. Especially for cases with IDE settings changed from one version to another.
Possible topics for next release
- Assembly plugin support, simple creation of self-contained executable jar
- Code quality monitoring/hints
- interaction with Sonar servers, some hints about Sonar API
- integration with bugtracking UI - use bug tracking system type and URL from Maven POM
- integration with hudson module (initial state already in 6.7) - configure hudson plugins based on maven plugin configuration -
- more integration with CI - propagate the results of hudson builds back to the UI (test coverage, pmd, findbugs, ...)

