Book Image

Learning Apache Karaf

By : Jamie Goodyear, Johan Edstrom, Heath Kesler
Book Image

Learning Apache Karaf

By: Jamie Goodyear, Johan Edstrom, Heath Kesler

Overview of this book

<p>Apache Karaf is more than just an OSGi-based runtime container; it’s an ecosystem of open source technologies that makes operating and managing applications easier. Karaf supports hot deployment of OSGi bundles by monitoring jar files inside the [home]/deploy directory. Each time a jar is copied in this folder, it will be installed inside the runtime. You can then update or delete it, and changes will be handled automatically. In addition, Karaf also supports exploded bundles and custom deployers.</p> <p>Learning Apache Karaf will introduce developers and administrators alike to the OSGi-based container, and impart best practices by example. The book shows you how to set up an Apache Karaf distribution, and how to arrive at a production-ready deployment. Learning Apache Karaf teaches you everything you need to install, configure, and administer Apache Karaf.</p> <p>Learning Apache Karaf will help guide you through the complexity of an OSGi container using sample code and configuration snippets to demonstrate the important aspects of managing and running a Karaf instance.</p> <p>Learning to install and command the runtime is just the beginning; deploying and provisioning applications is just as important to the successful implementation of a stable and scalable architecture. You will discover how to monitor runtime environments using remote access, logging, and JMX, and you will also develop production-level architectures with high availability and security.</p>
Table of Contents (16 chapters)

Apache Maven repositories


Apache Maven is named after a Yiddish word (http://en.wikipedia.org/wiki/Maven) meaning accumulator of knowledge.

Maven came about as an attempt to organize various Ant build files in the Jakarta Turbine project. Since its inception, it has grown to be a very commonly used build standard for Java projects with the following objectives, according to the Maven website:

  • Making the build process easy

  • Providing a uniform build system

  • Providing quality project information

  • Providing guidelines for best practices' development

  • Allowing transparent migration to new features

Maven uses a fairly simple layout with a directory structure reflecting group, artifact, and versioning. This is also combined with a set of concepts such as RELEASE and SNAPSHOT allowing you to distinguish where in the development lifecycle you are, what you are building against, and how you control deployment and testing:

~/.m2/repository/org/apache/camel/camel-core/2.11.0
~/.m2/repository/org/apache/camel/camel...