Return-Path: X-Original-To: apmail-ace-commits-archive@www.apache.org Delivered-To: apmail-ace-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id EBFCB9CBC for ; Wed, 15 Aug 2012 11:41:33 +0000 (UTC) Received: (qmail 66802 invoked by uid 500); 15 Aug 2012 11:41:33 -0000 Delivered-To: apmail-ace-commits-archive@ace.apache.org Received: (qmail 66764 invoked by uid 500); 15 Aug 2012 11:41:33 -0000 Mailing-List: contact commits-help@ace.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@ace.apache.org Delivered-To: mailing list commits@ace.apache.org Received: (qmail 66735 invoked by uid 99); 15 Aug 2012 11:41:32 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 15 Aug 2012 11:41:32 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 15 Aug 2012 11:41:30 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id 9859D23888FE for ; Wed, 15 Aug 2012 11:40:47 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1373348 - /ace/site/trunk/content/dev-doc/getting-started.mdtext Date: Wed, 15 Aug 2012 11:40:47 -0000 To: commits@ace.apache.org From: jawi@apache.org X-Mailer: svnmailer-1.0.8-patched Message-Id: <20120815114047.9859D23888FE@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: jawi Date: Wed Aug 15 11:40:47 2012 New Revision: 1373348 URL: http://svn.apache.org/viewvc?rev=1373348&view=rev Log: Some minor cleanups. Modified: ace/site/trunk/content/dev-doc/getting-started.mdtext Modified: ace/site/trunk/content/dev-doc/getting-started.mdtext URL: http://svn.apache.org/viewvc/ace/site/trunk/content/dev-doc/getting-started.mdtext?rev=1373348&r1=1373347&r2=1373348&view=diff ============================================================================== --- ace/site/trunk/content/dev-doc/getting-started.mdtext (original) +++ ace/site/trunk/content/dev-doc/getting-started.mdtext Wed Aug 15 11:40:47 2012 @@ -12,11 +12,13 @@ Point your browser to: http://ace.apache On that page you will find, amongst others, a link to the latest released sources. The page will automatically select a download mirror close to you. Download the archive and then type: - $ unzip apache-ace-src-1.0.0.zip + :::sh + $ unzip apache-ace-src-1.0.0.zip ### Checkout from subversion - $ svn co http://svn.apache.org/repos/asf/ace/trunk apache-ace + :::sh + $ svn co http://svn.apache.org/repos/asf/ace/trunk apache-ace In both cases you end up with a copy of the source code in the apache-ace folder. @@ -88,7 +90,7 @@ The integration tests of ACE are placed #### Prerequisites -For developing ACE using Eclipse, you need: +For developing ACE using Ant, you need: * A recent Java JDK, at least [Java 6](http://www.oracle.com/technetwork/indexes/downloads/index.html); * [Apache ANT](http://ant.apache.org/) version 1.8+. @@ -99,25 +101,26 @@ The command line build for Apache ACE is The build is structured as a flat hierarchy of projects, and you can go into any of these projects to build just that project and its dependencies. There are two special projects: -1. cnf -- Which is collection of repositories that contain all the required dependencies for building and running Apache ACE. -2. build -- A project that depends on all other projects and is used to build everything. +1. `cnf` -- Which is collection of repositories that contain all the required dependencies for building and running Apache ACE. +2. `build` -- A project that depends on all other projects and is used to build everything. -So, to build Apache ACE, we type the following commands: +So, to build Apache ACE, we issue the following commands: - $ cd build - $ ant + :::sh + $ cd build + $ ant -This leaves us with a set of bundles. +In the end, this leaves us with a set of bundles (in the generated folder of each project). The following targets are available: -* clean -- Cleans up any files in the current project that were generated during a build. -* build -- Build the current project. -* test -- Run the integration tests in the current project. -* testng -- Run the unit tests in the current project. -* deepclean -- Cleans up any files in the current project and all its dependencies. -* deeptestng -- Runs the unit tests in the current project and all its dependencies. -* deeptest -- Runs the integration tests in the current project and all its dependencies. +* clean -- Cleans up any files in the current project that were generated during a build; +* build -- Build the current project; +* test -- Run the integration tests in the *current* project; +* testng -- Run the unit tests in the *current* project; +* deepclean -- Cleans up any files in the current project and all its dependencies; +* deeptestng -- Runs the unit tests in the current project and all its dependencies; +* deeptest -- Runs the integration tests in the current project and all its dependencies. There actually are a few more, but these are the most important ones. @@ -127,28 +130,31 @@ There actually are a few more, but these The next step is to create an archive for the server, so we end up with something we can actually run: - $ ant -f bin-build.xml package + :::sh + $ ant -f bin-build.xml package Now, in the generated folder, two archives will have been created, and there are also subfolders with the same names as the archives that you can go into and run. You can start the server like this: - $ cd generated/ace-devserver - $ sh run.sh + :::sh + $ cd generated/ace-devserver + $ sh run.sh ### ...add an OSGi bundle The easiest way to add an OSGi bundle, is to drag it onto the "Local Repository" entry in the "Repositories" view, or to use the "Add files to repository" toolbar icon. Bndtools will analyze the files you try to add and show their metadata if they're indeed valid bundles. -The bundles will end up in the local repository inside the `cnf` project. +The bundles will end up in the local repository inside the cnf project. ### ...add a Java library If you want to add a library that does not contain any OSGi metadata, you can follow the steps below to add it to the "Library Repository" so it can be used in all other projects within Apache ACE. If your library does have sensible OSGi metadata, please follow the "...add an OSGi bundle" instructions above. 1. Copy the library to the right location. - The jar file for the library should be copied to the following location: `cnf/lib/foo/foo-1.0.0.jar` -1. Update the repository.xml. - After making changes to anything in cnf/lib/ you need to update the index file that describes the contents of the repository. To do this enter the following commands: - - $ cd cnf - $ ant - $ java -cp bin org.apache.ace.bnd.LibraryIndexer + The jar file for the library should be copied to the following location: cnf/lib/foo/foo-1.0.0.jar. Note that the directory name should be equal to the basename of the added JAR file, that is, everything *before* the version-string of the JAR. +2. Update the `repository.xml`. + After making changes to anything in cnf/lib/ you need to update the index file that describes the contents of the repository. To do this enter the following commands: + + :::sh + $ cd cnf + $ ant + $ java -cp bin org.apache.ace.bnd.LibraryIndexer \ No newline at end of file