Getting set up for CorDapp development
Before you start developing CorDapps, you need to download four pieces of software: the Java 17 JDK, IntelliJ IDEA, Git, and Gradle.
Install the Java 17 JDK
Install the Java 17 JDK. Corda requires at least version 17.0.9, but does not currently support Java 18 or higher.
Corda has been tested against the following Java builds:
If you are using Windows, you must also add Java to the PATH environment variable by following the instructions in the Oracle documentation.
Install IntelliJ IDEA
IntelliJ IDEA is an integrated development environment (IDE) that offers strong support for Kotlin and Java development.
Install the IntelliJ IDEA Community Edition. Corda supports IntelliJ IDEA versions 2023.x and 2024.x, and Kotlin plugin version 1.9.20.
To install IntelliJ IDEA in a Ubuntu environment, go to the Jetbrains IntelliJ snap package.
Install Git
We use Git to host our sample CorDapp and provide version control.
To install Git, go to Git and install the version for your operating system.
Install Gradle
Gradle is a build automation tool for multi-language software development. It controls the development process in the tasks of compilation and packaging to testing, deployment, and publishing.
- If you run the sample CorDapp, the included
gradlew
script installs Gradle automatically when you open the sample CorDapp in IntelliJ. - If you plan to start developing your own CorDapp straight away, install Gradle manually. Go to Gradle, then locate and install Gradle version 7.6.4. Corda requires Gradle version 7.6.x, and does not support Gradle 8.x.
You now have everything you need to develop CorDapps. If you encounter any issues, please ask on Stack Overflow or via our Slack channels.
Run a sample CorDapp (optional)
R3 recommends running a sample CorDapp to see Corda in action before you start developing.
Resources
- Sample CorDapps, templates, and community projects.
- Corda API documentation.
- Flow cookbook.
- CorDapp Java and Kotlin sample repositories - contain multiple sample CorDapps, from those to get you started, to those which demonstrate specific features and advanced usage.
- CorDapp Java and Kotlin templates - a stubbed-out CorDapp that you can use to bootstrap your own CorDapps.
For more developer resources, open-source projects, and CorDapp templates, check out R3’s Developer Platform portal.
Was this page helpful?
Thanks for your feedback!
Chat with us
Chat with us on our #docs channel on slack. You can also join a lot of other slack channels there and have access to 1-on-1 communication with members of the R3 team and the online community.
Propose documentation improvements directly
Help us to improve the docs by contributing directly. It's simple - just fork this repository and raise a PR of your own - R3's Technical Writers will review it and apply the relevant suggestions.
We're sorry this page wasn't helpful. Let us know how we can make it better!
Chat with us
Chat with us on our #docs channel on slack. You can also join a lot of other slack channels there and have access to 1-on-1 communication with members of the R3 team and the online community.
Create an issue
Create a new GitHub issue in this repository - submit technical feedback, draw attention to a potential documentation bug, or share ideas for improvement and general feedback.
Propose documentation improvements directly
Help us to improve the docs by contributing directly. It's simple - just fork this repository and raise a PR of your own - R3's Technical Writers will review it and apply the relevant suggestions.