Download presentation
Presentation is loading. Please wait.
Published byDarleen Clarke Modified over 8 years ago
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.