blob: 0ddb2f4d8d8d49b17133f589c27fc68ec8b14df5 [file] [log] [blame]
Pierre De Rop3a00a212015-03-01 09:27:46 +00001/*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18Welcome to Apache Felix Dependency Manager
19==========================================
20
21Apache Felix Dependency Manager is a versatile java API, allowing to declaratively
22register, acquire, and manage dynamic OSGi services.
23
24Building and testing Apache Felix Dependency Manager
25====================================================
26
27** Compilation Using gradle:
28
29- If necessary, configure your https proxy settings:
30
31 export GRADLE_OPTS="-Dhttps.proxyHost=www.somehost.org -Dhttps.proxyPort=8080"
32
33- If you are building a released org.apache.felix.dependencymanager-r<n>-src.zip artifact, then
34 you also have to unfold the org.apache.felix.dependencymanager-r<n>-deps.zip on the same directory where you have unfolded the source archive.
35 (no need to do this if you have checked out from the felix-trunk).
36
37- Install java7.
38
39- Compile Dependendency Manager annotations bndtools plugin:
40
41$ ./gradlew org.apache.felix.dependencymanager.annotation:jar
42
43- Compile all other bundles:
44
45$ ./gradlew jar
46
47- run junit tests:
48
49$ ./gradlew test
50
51- run integration tests:
52
53$ ./gradlew check
54
55** Compilation Using Eclipse:
56
Pierre De Ropa2912162015-11-22 18:43:28 +000057- Install latest Eclipse Mars, and configure two JREs for both java7 and java8:
Pierre De Rop3a00a212015-03-01 09:27:46 +000058
59* go to Windows -> Preferences -> Java -> Installed JREs
60* Then add two JREs: one for java7, and the other for java8.
61* Declare the java7 JRE as the default one.
62
63Java8 is only used to build and run the org.apache.felix.dependencymanager.benchmark module, which is used to perform
64DM performance tests within eclipse bndtools.
65
Pierre De Ropa2912162015-11-22 18:43:28 +000066- Install BndTools 3.0.0
67
Pierre De Rop3a00a212015-03-01 09:27:46 +000068- Open BndTools perspective
Pierre De Ropa2912162015-11-22 18:43:28 +000069
Pierre De Rop3a00a212015-03-01 09:27:46 +000070- Import Dependency Manager into Eclipse, and compile everything
Pierre De Ropa2912162015-11-22 18:43:28 +000071
Pierre De Rop3a00a212015-03-01 09:27:46 +000072- if it's the first time you import the project into eclipse, it may happen that some modules that requires the
73Dependency Manager Annotations bnd plugin don't compile: It's a know issue. To work around, restart eclipse and
74rebuild every modules.
Pierre De Ropa2912162015-11-22 18:43:28 +000075
Pierre De Rop3a00a212015-03-01 09:27:46 +000076- Click on org.apache.felix.dependencymanager project and run it as "JUnit test".
Pierre De Ropa2912162015-11-22 18:43:28 +000077
Pierre De Rop3a00a212015-03-01 09:27:46 +000078- Click on org.apache.felix.dependencymanager.shell and run it as "JUnit test"
Pierre De Ropa2912162015-11-22 18:43:28 +000079
Pierre De Rop3a00a212015-03-01 09:27:46 +000080- Click on org.apache.felix.dependencymanager.itest and run it as "Bnd OSGi Test Launcer (Junit)".
Pierre De Ropa2912162015-11-22 18:43:28 +000081
Pierre De Rop3a00a212015-03-01 09:27:46 +000082- Click on org.apache.felix.dependencymanager.runtime.itest and run it as ""Bnd OSGi Test Launcer (Junit)".
83
84Getting Started
85===============
86
87To start using Apache Felix Dependency Manager, please go to our website and read the
88getting started guide for users:
89
90 http://felix.apache.org/documentation/subprojects/apache-felix-dependency-manager.html
91
92Many examples are also available from the dependency manager samples module.
93See ./org.apache.felix.dependencymanager.samples/README.samples
94
95Many thanks for using Apache Felix Dependency Manager.
96
97The Felix Team