-
-
Notifications
You must be signed in to change notification settings - Fork 26
/
build.gradle
99 lines (85 loc) · 3.5 KB
/
build.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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
plugins {
id 'java'
id 'maven-publish'
id 'idea'
id 'jacoco'
id 'com.diffplug.spotless' version '6.25.0'
id 'io.codearte.nexus-staging' version '0.30.0'
id 'de.marcphilipp.nexus-publish' version '0.4.0'
id 'org.jetbrains.kotlin.jvm' version '1.9.24'
id 'de.undercouch.download' version '4.1.2'
}
description 'Web3j-evm extension'
ext {
web3jVersion = '4.12.2'
log4jVersion = '2.23.1'
guavaVersion = '33.2.0-jre'
jacksonVersion = '2.10.0'
klaxonVersion = '5.6'
kotlinVersion = '1.9.24'
besuPluginVersion = '24.1.1'
besuInternalVersion = '24.1.1'
besuInternalCryptoVersion = '23.1.3'
besuCryptoDepVersion = '0.8.3'
}
apply {
[
'jacoco',
'java',
'javadoc',
'repositories',
'publish',
'spotless',
'junit'
].each { buildScript ->
download {
src "https://raw.githubusercontent.com/hyperledger/web3j-build-tools/main/gradle/$buildScript/build.gradle"
dest "$rootDir/gradle/$buildScript/build.gradle"
overwrite false
quiet true
onlyIfModified true
}
from("$rootDir/gradle/$buildScript/build.gradle")
}
}
repositories {
mavenCentral()
maven { url "https://hyperledger.jfrog.io/artifactory/besu-maven/" }
maven { url "https://splunk.jfrog.io/splunk/ext-releases-local" }
}
dependencies {
implementation "org.web3j:core:$web3jVersion"
implementation "com.google.guava:guava:$guavaVersion"
implementation "com.beust:klaxon:$klaxonVersion"
implementation "org.jetbrains.kotlin:kotlin-reflect:$kotlinVersion"
def withoutAbi = { exclude group: 'org.web3j', module: 'abi' }
implementation "org.hyperledger.besu:plugin-api:$besuPluginVersion", withoutAbi
implementation "org.hyperledger.besu.internal:besu:$besuInternalVersion", withoutAbi
implementation "org.hyperledger.besu:evm:$besuPluginVersion", withoutAbi
implementation "org.hyperledger.besu.internal:api:$besuInternalVersion", withoutAbi
implementation "org.hyperledger.besu.internal:config:$besuInternalVersion", withoutAbi
implementation "org.hyperledger.besu.internal:core:$besuInternalVersion", withoutAbi
implementation "org.hyperledger.besu.internal:crypto:$besuInternalCryptoVersion", withoutAbi
implementation "org.hyperledger.besu.internal:rlp:$besuInternalVersion", withoutAbi
implementation "org.hyperledger.besu.internal:kvstore:$besuInternalVersion", withoutAbi
implementation "org.hyperledger.besu.internal:metrics-core:$besuInternalVersion", withoutAbi
implementation "org.hyperledger.besu.internal:trie:$besuInternalVersion", withoutAbi
implementation "org.hyperledger.besu.internal:util:$besuInternalVersion", withoutAbi
implementation "org.hyperledger.besu:bls12-381:$besuCryptoDepVersion", withoutAbi
implementation "org.hyperledger.besu:secp256k1:$besuCryptoDepVersion", withoutAbi
}
compileKotlin {
kotlinOptions {
jvmTarget = "17"
}
}
compileTestKotlin {
kotlinOptions {
jvmTarget = "17"
}
}
tasks.named("spotlessKotlin").configure { dependsOn("compileKotlin", "spotlessJava", "spotlessGroovyGradle", "processTestResources") }
tasks.named("spotlessJava").configure { dependsOn("compileTestJava", "compileTestKotlin", "compileKotlin", "compileTestKotlin", "spotlessGroovyGradle", "processTestResources") }
tasks.named("test").configure { dependsOn("spotlessKotlin", "spotlessJava") }
// To publish in mavenLocal()
//tasks.withType(Sign)*.enabled = false