Presentation is loading. Please wait.

Presentation is loading. Please wait.

Maven & NetBeans Platform. Agenda ● Maven NetBeans Platform Project Types ● Three NetBeans RCP project types ● Differences with Ant project types ● All.

Similar presentations


Presentation on theme: "Maven & NetBeans Platform. Agenda ● Maven NetBeans Platform Project Types ● Three NetBeans RCP project types ● Differences with Ant project types ● All."— Presentation transcript:

1 Maven & NetBeans Platform

2 Agenda ● Maven NetBeans Platform Project Types ● Three NetBeans RCP project types ● Differences with Ant project types ● All dependencies are artifacts ● Build system: Maven + NetBeans mojos ● Hudson build server ● Artifactory as a repository manager

3  Maven RCP Projects Project types for Maven based Platform Projects (archetypes)

4  Maven RCP Projects Maven NetBeans Application > The basis for NetBeans RCP Applications > Maven App Builder Project  MultiModule reactor project  packaging = pom > Application configuration project for platform dependencies  packaging = nbm-application  parent is pom reactor > Additional pom for branding  packaging = nbm  parent is pom reactor > Optionally a starting module  packaging = nbm  parent is pom reactor

5 Maven vs. Ant Projects No library wrapper modules No project.properties, project.xml, and other NetBeans-specific configurations Resources separated from Java files More work in XML files, though more and more UI support is being added Branding separated from application Dependencies set completely differently

6 Maven vs. Ant Projects The Way of Maven: > Pom.xml for projects > Separation of sources from resources > Build system consists of plugins (mojos), loaded from a repository > More than a build system, Maven is a project management system: > CI-System, Issue-Tracking, Repository-Management, Plugin- Management, Dependency-Management > Maven is not a scripting language like Ant, but is based on standard structures in projects.

7 Alle dependencies are artifacts Unknown dependencies found from repositories > Search dialog for classes and > packages in all registered repositoriess

8 Alle dependencies are artifacts Unknown dependencies found from repositories > New hint in source code

9 Alle dependencies are artifacts

10 Build system based on plugins Plugin management in main pom

11 Build system based on plugins Plugin usage in modules & suites

12 Hudson Build Server Hudson for continuous integration

13 Hudson Build Server Hudson for continuous integration

14 Artifactory for Managing Repositories Artifactory > Provides company repository for non-public builds, artifacts, and projects. > Artifact provider for legacy JAR files. > Provides a mirror: > for repositories that are hard to reach > as a stable basis for artifacts from third party repositories or those that are under development > Combines multiple repositories under a single URL. > Provides a user interface for managing repositories.

15 Artifactory for Managing Repositories Artifactory > Direct connection from/to Hudson

16 Artifactory for Managing Repositories Artifactory > Repository Browser

17 Enhancements NetBeans 7 with Maven 3 (since m²) > Maven3embedder by default. > "Build with Dependencies" automatically locates the root aggregator project for even deeply nested modules. There is no need to manually define a "reactor location". > If your project's classpath includes annotation processors registered for use by default (i.e. in META-INF/services), they will now be run by the IDE's editor.

18 Further Reading Maven: The Definitive Guide > Online: http://www.sonatype.com/books/maven-book/http://www.sonatype.com/books/maven-book/ Better Builds with Maven > Online: http://www.maestrodev.com/better-build-mavenhttp://www.maestrodev.com/better-build-maven Apache Articles and Books > http://maven.apache.org/articles.html

19 Questions & Answers


Download ppt "Maven & NetBeans Platform. Agenda ● Maven NetBeans Platform Project Types ● Three NetBeans RCP project types ● Differences with Ant project types ● All."

Similar presentations


Ads by Google