Log In
Or create an account -> 
Imperial Library
  • Home
  • About
  • News
  • Upload
  • Forum
  • Help
  • Login/SignUp

Index
Maven: The Definitive Guide
SPECIAL OFFER: Upgrade this ebook with O’Reilly A Note Regarding Supplemental Files Preface
Maven... What Is It? Font Conventions Maven Writing Conventions Using Code Examples Safari® Books Online How to Contact Us Acknowledgments
I. Introduction
1. Introducing Apache Maven
Convention over Configuration A Common Interface Universal Reuse Through Maven Plugins Conceptual Model of a “Project” Is Maven an Alternative to XYZ? Comparing Maven and Ant Summary
2. Installing and Running Maven
Verify Your Java Installation Downloading Maven Installing Maven
Installing Maven on Mac OS X Installing Maven on Microsoft Windows Installing Maven on Linux Installing Maven on FreeBSD or OpenBSD
Testing a Maven Installation Maven Installation Details
User-Specific Configuration and Repository Upgrading a Maven Installation
Getting Help with Maven Using the Maven Help Plugin
Describing a Maven Plugin
About the Apache Software License
II. Maven by Example
3. A Simple Maven Project
Introduction
Downloading This Chapter’s Example
Creating a Simple Project Building a Simple Project Simple Project Object Model Core Concepts
Maven Plugins and Goals Maven Lifecycle Maven Coordinates Maven Repositories Maven’s Dependency Management Site Generation and Reporting
Summary
4. Customizing a Maven Project
Introduction
Downloading This Chapter’s Example
Defining the Simple Weather Project
Yahoo! Weather RSS
Creating the Simple Weather Project Customize Project Information Add New Dependencies Simple Weather Source Code Add Resources Running the Simple Weather Program
The Maven Exec Plugin Exploring Your Project Dependencies
Writing Unit Tests Adding Test-Scoped Dependencies Adding Unit Test Resources Executing Unit Tests
Ignoring Test Failures Skipping Unit Tests
Building a Packaged Command-Line Application
5. A Simple Web Application
Introduction
Downloading This Chapter’s Example
Defining the Simple Web Application Creating the Simple Web Project Configuring the Jetty Plugin Adding a Simple Servlet Adding J2EE Dependencies Conclusion
6. A Multimodule Project
Introduction
Downloading This Chapter’s Example
The Simple Parent Project The Simple Weather Module The Simple Web Application Module Building the Multimodule Project Running the Web Application
7. Multimodule Enterprise Project
Introduction
Downloading This Chapter’s Example Multimodule Enterprise Project Technology Used in This Example
The Simple Parent Project The Simple Model Module The Simple Weather Module The Simple Persist Module The Simple Web Application Module Running the Web Application The simple-command Module Running simple-command Conclusion
Programming to Interface Projects
III. Maven Reference
8. Optimizing and Refactoring POMs
Introduction POM Cleanup Optimizing Dependencies Optimizing Plugins Optimizing with the Maven Dependency Plugin Final POMs Conclusion
9. The Project Object Model
Introduction The POM
The Super POM The Simplest POM The Effective POM Real POMs
POM Syntax
Project Versions
Version build numbers SNAPSHOT versions
Property References
Project Dependencies
Dependency Scope Optional Dependencies Dependency Version Ranges Transitive Dependencies
Transitive dependencies and scope
Conflict Resolution Dependency Management
Project Relationships
More on Coordinates Multimodule Projects Project Inheritance
POM Best Practices
Grouping Dependencies Multimodule Versus Inheritance
Simple project Multimodule enterprise project Prototype parent projects
10. The Build Lifecycle
Introduction
Clean Lifecycle (clean) Default Lifecycle (default) Site Lifecycle (site)
Package-Specific Lifecycles
JAR POM Maven Plugin EJB WAR EAR Other Packaging Types
Common Lifecycle Goals
Process Resources Compile Process Test Resources Test Compile Test Install Deploy
11. Build Profiles
What Are They For?
What Is Build Portability?
Nonportable builds Environment portability Organizational (in-house) portability Wide (universal) portability
Selecting an Appropriate Level of Portability
Portability Through Maven Profiles
Overriding a Project Object Model
Profile Activation
Activation Configuration Activation by the Absence of a Property
External Profiles Settings Profiles
Global Settings Profiles
Listing Active Profiles Tips and Tricks
Common Environments Protecting Secrets Platform Classifiers
Summary
12. Maven Assemblies
Introduction Assembly Basics
Predefined Assembly Descriptors Building an Assembly Assemblies as Dependencies Assembling Assemblies via Assembly Dependencies
Overview of the Assembly Descriptor The Assembly Descriptor
Property References in Assembly Descriptors Required Assembly Information
Controlling the Contents of an Assembly
Files Section fileSets Section Default Exclusion Patterns for fileSets dependencySets Section
Customizing dependency output location Interpolation of properties in dependency output location Including and excluding dependencies by scope Fine-tuning: dependency includes and excludes Transitive dependencies, project attachments, and project artifacts Advanced unpacking options Summarizing dependency sets
moduleSets Sections
Module selection Sources section Interpolation of outputDirectoryMapping in moduleSets Binaries section moduleSets, parent POMs, and the binaries section
Repositories Section Managing the Assembly’s Root Directory componentDescriptors and containerDescriptorHandlers
Best Practices
Standard, Reusable Assembly Descriptors Distribution (Aggregating) Assemblies
Summary
13. Properties and Resource Filtering
Introduction Maven Properties
Maven Project Properties Maven Settings Properties Environment Variable Properties Java System Properties User-Defined Properties
Resource Filtering
14. Maven and Eclipse: m2eclipse
Introduction m2eclipse Installing the m2eclipse Plugin
Installing Prerequisites
Installing Subclipse Installing Mylyn Installing AspectJ Development Tools (AJDT) Installing the Web Tools Platform (WTP)
Installing m2eclipse
Enabling the Maven Console Creating a Maven Project
Checking Out a Maven Project from SCM Creating a Maven Project from a Maven Archetype Creating a Maven Module
Create a Maven POM File Importing Maven Projects
Importing a Maven Project Materializing a Maven Project
Running Maven Builds Working with Maven Projects
Adding and Updating Dependencies and Plugins Creating a Maven Module Downloading Source Opening Project Pages Resolving Dependencies
Working with Maven Repositories
Searching For Maven Artifacts and Java classes Indexing Maven Repositories
Using the Form-Based POM Editor Analyzing Project Dependencies in m2eclipse Maven Preferences Summary
15. Site Generation
Introduction Building a Project Site with Maven Customizing the Site Descriptor
Customizing the Header Graphics Customizing the Navigation Menu
Site Directory Structure Writing Project Documentation
APT Example FML Example
Deploying Your Project Web Site
Configuring Server Authentication Configuring File and Directory Modes
Customizing Site Appearance
Customizing the Site CSS Create a Custom Site Template Reusable Web Site Skins Creating a Custom Theme CSS Customizing Site Templates in a Skin
Tips and Tricks
Inject XHTML into HEAD Add Links Under Your Site Logo Add Breadcrumbs to Your Site Add the Project Version Modify the Publication Date Format and Location Using Doxia Macros
16. Repository Manager
Introduction
History of Nexus
Installing Nexus
Downloading Nexus from Sonatype Installing Nexus Running Nexus Post-Install Checklist Startup Scripts for Linux
Add Nexus as a service on Red Hat, Fedora, and CentOS Add Nexus as a service on Ubuntu
Running Nexus Behind a Proxy
Using Nexus
Browsing Repositories Browsing Groups Searching for Artifacts Browsing System Feeds Browsing Log Files and Configuration Changing Your Password
Configuring Maven to Use Nexus Repositories
Using the Nexus Central Proxy Repository Using Nexus for Snapshot Repositories Adding Custom Repositories for Missing Dependencies Adding a New Repository Adding a Repository to a Group
Configuring Nexus
Customizing Server Configuration Managing Repositories Managing Groups Managing Routes Managing Scheduled Services Managing Security
Managing privileges Managing repository targets Managing security roles Managing users
Network Configuration
Maintaining Repositories
Uploading Artifacts to Hosted Repositories
Deploying Artifacts to Nexus
Configuring Deployment Security Deploying Releases Deploying Snapshots Deploying Third-Party Artifacts
17. Writing Plugins
Introduction Programming Maven
What Is Inversion of Control? Introduction to Plexus Why Plexus? What Is a Plugin?
Plugin Descriptor
Top-Level Plugin Descriptor Elements Mojo Configuration Plugin Dependencies
Writing a Custom Plugin
Creating a Plugin Project A Simple Java Mojo Configuring a Plugin Prefix Logging from a Plugin Mojo Class Annotations When a Mojo Fails
Mojo Parameters
Supplying Values for Mojo Parameters Multivalued Mojo Parameters Depending on Plexus Components Mojo Parameter Annotations
Plugins and the Maven Lifecycle
Executing a Parallel Lifecycle Creating a Custom Lifecycle Overriding the Default Lifecycle
18. Writing Plugins in Alternative Languages
Writing Plugins in Ant Creating an Ant Plugin Writing Plugins in JRuby
Creating a JRuby Plugin Ruby Mojo Implementations Logging from a Ruby Mojo Raising a MojoError Referencing Plexus Components from JRuby
Writing Plugins in Groovy
Creating a Groovy Plugin
IV. Appendixes
A. Settings Details
Quick Overview Settings Details
Simple Values Servers Mirrors Proxies Profiles Activation Properties Repositories Plugin Repositories Active Profiles
B. Sun Specification Alternatives
Index About the Author Colophon SPECIAL OFFER: Upgrade this ebook with O’Reilly
  • ← Prev
  • Back
  • Next →
  • ← Prev
  • Back
  • Next →

Chief Librarian: Las Zenow <zenow@riseup.net>
Fork the source code from gitlab
.

This is a mirror of the Tor onion service:
http://kx5thpx2olielkihfyo4jgjqfb7zx7wxr3sd4xzt26ochei4m6f7tayd.onion