mirror of
https://github.com/corda/corda.git
synced 2025-01-31 00:24:59 +00:00
a9d9b668bc
* Fix SLF4J logging for example Gradle project. * Stop adding java.lang.Class's internal fields and properties to the local type cache. This allows us to fix ArraySerializer for the DJVM.
113 lines
3.4 KiB
Groovy
113 lines
3.4 KiB
Groovy
apply plugin: 'kotlin'
|
|
apply plugin: 'application'
|
|
apply plugin: 'net.corda.plugins.cordformation'
|
|
apply plugin: 'net.corda.plugins.quasar-utils'
|
|
|
|
configurations {
|
|
integrationTestCompile.extendsFrom testCompile
|
|
integrationTestRuntime.extendsFrom testRuntime
|
|
|
|
compile {
|
|
// We already have a SLF4J implementation on our runtime classpath,
|
|
// and we don't need another one.
|
|
exclude group: "org.apache.logging.log4j"
|
|
}
|
|
}
|
|
|
|
sourceSets {
|
|
integrationTest {
|
|
kotlin {
|
|
compileClasspath += main.output + test.output
|
|
runtimeClasspath += main.output + test.output
|
|
srcDir file('src/integration-test/kotlin')
|
|
}
|
|
java {
|
|
compileClasspath += main.output + test.output
|
|
runtimeClasspath += main.output + test.output
|
|
srcDir file('src/integration-test/java')
|
|
}
|
|
}
|
|
}
|
|
|
|
compileTestJava.dependsOn tasks.getByPath(':node:capsule:buildCordaJAR')
|
|
|
|
dependencies {
|
|
// Cordformation needs a SLF4J implementation when executing the Network
|
|
// Bootstrapper, but Log4J doesn't shutdown completely from within Gradle.
|
|
// Use a much simpler SLF4J implementation here instead.
|
|
cordaRuntime "org.slf4j:slf4j-simple:$slf4j_version"
|
|
|
|
compile project(':core')
|
|
compile project(':client:jfx')
|
|
compile project(':node-driver')
|
|
compile project(':webserver')
|
|
|
|
testCompile project(':test-utils')
|
|
|
|
compile "org.graphstream:gs-core:1.3"
|
|
compile("org.graphstream:gs-ui:1.3") {
|
|
exclude group: "bouncycastle"
|
|
exclude group: "junit"
|
|
}
|
|
|
|
cordaRuntime project(path: ":node:capsule", configuration: 'runtimeArtifacts')
|
|
cordaRuntime project(path: ":webserver:webcapsule", configuration: 'runtimeArtifacts')
|
|
|
|
// CorDapps: dependent flows and services
|
|
compile project(':finance:contracts')
|
|
compile project(':finance:workflows')
|
|
}
|
|
|
|
mainClassName = "net.corda.docs.ClientRpcTutorialKt"
|
|
|
|
task getClientRpcTutorial(type: CreateStartScripts) {
|
|
dependsOn(classes)
|
|
mainClassName = "net.corda.docs.ClientRpcTutorialKt"
|
|
applicationName = "client-rpc-tutorial"
|
|
defaultJvmOpts = []
|
|
outputDir = new File(project.buildDir, 'scripts')
|
|
classpath = jar.outputs.files + project.configurations.runtime
|
|
}
|
|
|
|
applicationDistribution.into("bin") {
|
|
from(getClientRpcTutorial)
|
|
fileMode = 0755
|
|
}
|
|
|
|
task integrationTest(type: Test) {
|
|
testClassesDirs = sourceSets.integrationTest.output.classesDirs
|
|
classpath = sourceSets.integrationTest.runtimeClasspath
|
|
}
|
|
|
|
task deployNodes(type: net.corda.plugins.Cordform, dependsOn: ['jar']) {
|
|
directory "./build/nodes"
|
|
node {
|
|
name "O=Notary Service,OU=corda,L=London,C=GB"
|
|
notary = [validating : true]
|
|
p2pPort 10002
|
|
rpcSettings {
|
|
address "localhost:10003"
|
|
adminAddress "localhost:10013"
|
|
}
|
|
webPort 10004
|
|
extraConfig = ['h2Settings.address' : 'localhost:10014']
|
|
cordapps = []
|
|
}
|
|
node {
|
|
name "O=Alice Corp,L=London,C=GB"
|
|
p2pPort 10005
|
|
rpcSettings {
|
|
address "localhost:10006"
|
|
adminAddress "localhost:10016"
|
|
}
|
|
webPort 10007
|
|
extraConfig = ['h2Settings.address' : 'localhost:10017']
|
|
cordapps = []
|
|
rpcUsers = [
|
|
['username' : "user",
|
|
'password' : "password",
|
|
'permissions' : ["StartFlow.net.corda.finance.flows.CashFlow"]]
|
|
]
|
|
}
|
|
}
|