-
Notifications
You must be signed in to change notification settings - Fork 4
/
orientdb.gradle
82 lines (72 loc) · 2.44 KB
/
orientdb.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
interface Const {
static final String DEF_VERSION = '1.6.3'
static final String ORIENT_GROUP = 'com.orientechnologies'
}
/**
* Include Orient Graph database. Calls orientCore(...).
*
* Be careful when using OrientDB - it may depend on SNAPSHOT versions
* of the graph DB implementation that in turn depends on a different version
* of OrientDB (for instance for version 1.5.1). This can lead to
* inconsistencies. If possible, depend on a OrientDB release that does
* not depend on SNAPSHOTS (if you can find one).
*/
def orientGraphDB(String orientDBVersion = Const.DEF_VERSION) {
orientCore(orientDBVersion)
platform {
feature id: 'platform.shared.orientdb.graphdb',
name: 'OrientDB Graph DB',
version: orientDBVersion, {
bundle group: Const.ORIENT_GROUP, name: 'orientdb-graphdb', version: '1.5.1'
includes << 'platform.shared.orientdb.core'
}
bnd group: 'com.tinkerpop.gremlin', name: 'gremlin-groovy', {
// adapt gremlin configuration
optionalImport 'com.tinkerpop.blueprints.impls.sail'
optionalImport 'jline'
}
}
}
/**
* Orient DB core bundles and fixed versions for all OrientDB bundles.
*/
def orientCore(String orientDBVersion = Const.DEF_VERSION) {
def orientGroup = Const.ORIENT_GROUP
repositories {
maven { // wetransform artifactory
url 'https://artifactory.wetransform.to/artifactory/libs-release/'
}
maven {
url 'https://oss.sonatype.org/content/groups/public/'
}
}
platform {
bnd group: orientGroup, {
// import and export orient packages with version
instruction 'Import-Package', "com.orientechnologies.*;version=${orientDBVersion},*"
instruction 'Export-Package', "com.orientechnologies.*;version=${orientDBVersion},*"
}
bnd name: 'concurrent', {
instruction '-removeheaders', 'Require-Capability'
}
feature id: 'platform.shared.orientdb.core',
name: 'OrientDB core',
version: orientDBVersion, {
bundle group: orientGroup, name: 'orientdb-core', version: '1.5.1'
/*
* Commons and nativeos must share a classloader.
*/
merge {
// 1.5.5 is compiled with java 17
// 1.5.3 is compiled with java 18
bundle group: orientGroup, name: 'orient-commons', version: '1.5.5'
bundle group: orientGroup, name: 'orientdb-nativeos', version: '1.5.1'
bnd {
version = orientDBVersion
symbolicName = 'com.orientechnologies.common'
instruction '-removeheaders', 'Require-Capability'
}
}
}
}
}