corda/finance/build.gradle
szymonsztuka 4aaefb4fe9 CORDA-2331 Split Workflow and contracts of Finance App into separate Cordapps (#4422)
* Split Workflow and contracts of Finance App into separate Cordapps, part 1 - content which is different between OS and ENT is still in contract Cordapp.

* Move CashSelection implementations to workflow module.

* Move CashSelection implmentations to workflow module.

* Move finance module to finance-flows, top level finance module is empty.

* Move finance module to finance-flows, top level finance module is empty.

* Updated build comment.

* Revert publication of combined (contracts and flows) corda-finance.jar (to maintain backwards compatibility with 3rd party cordapps dependent on finance)

* Added backwards compatibility clarification comment.

* Re-instate new cordapp metadata.

* Global rename of `finance-flows` to `finance-workflows` to follow adopted naming conventions.

* Addressed final review comments.

* Rename application to "Corda Finance Demo"

* Generation of original corda-finance jar from new sub-modules.

* Fixed and tested demobench with new split finance contract and workflow jars.

* Renamed finance sub-modules to contracts and workflows.

* Remove Michele!!!

* Minor fix to filtering logic.

* Align CorDapp configuration filename with workflows jar.

* Fix breaks caused by finance module naming changes.

* Final alignment between OS/ENT of finance contract code.
2018-12-19 18:02:51 +00:00

57 lines
1.9 KiB
Groovy

apply plugin: 'kotlin'
// Java Persistence API support: create no-arg constructor
// see: http://stackoverflow.com/questions/32038177/kotlin-with-jpa-default-constructor-hell
apply plugin: 'kotlin-jpa'
apply plugin: CanonicalizerPlugin
apply plugin: 'net.corda.plugins.publish-utils'
apply plugin: 'net.corda.plugins.quasar-utils'
apply plugin: 'net.corda.plugins.cordapp'
apply plugin: 'com.jfrog.artifactory'
description 'Corda finance modules'
/**
* NOTE: this build.gradle file is maintained for backwards compatibility purposes.
* It will build a `corda-finance.jar` including all Contracts and Flows.
* From Corda 4 it is strongly recommended that CorDapps dependent on the `corda-finance.jar`
* explicitly declare dependencies on either/both of the corda finance sub-modules:
* corda-finance-contract => generates `corda-finance-contract.jar`
* corda-finance-workflows => generates `corda-finance-workflows.jar`
* Third party CorDapps should remember to include these sub-module dependencies using the `cordapp` Corda Gradle plug-in
* cordapp project(':finance:workflows')
* cordapp project(':finance:contracts')
*/
def mainProjects = [':finance:contracts',':finance:workflows', ':confidential-identities']
jar.dependsOn mainProjects.collect{ it+":compileJava"}
jar {
baseName 'corda-finance'
from files(mainProjects.collect{ project(it).sourceSets.main.output })
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
}
cordapp {
signing {
enabled false
}
targetPlatformVersion corda_platform_version.toInteger()
minimumPlatformVersion 1
contract {
name "Corda Finance Demo"
versionId 1
vendor "R3"
licence "Open Source (Apache 2)"
}
workflow {
name "Corda Finance Demo"
versionId 1
vendor "R3"
licence "Open Source (Apache 2)"
}
}
publish {
name jar.baseName
}