Create a Gradle Groovy Application
Create a Groovy application that used the Carnival library using Gradle as the build tool.
Directions
Use Gradle Init to create an empty application
Follow the Gradle instructions to create a Groovy application project.
Prompt | Selection |
---|---|
type of project | application |
implementation language | Groovy |
build script DSL | Groovy |
You will be required to give your application a name and default package. The rest of these instructions assume the name carnival-demo-application.
Edit the Gradle Build
Apply the following edits to app/build.gradle
.
Apply the Carnival plugin
In addition the groovy plugin and any other plugins already included from gradle init
, the following plugins are required.
plugins {
id "io.github.carnival-data.carnival" version "3.0.0"
}
On a Windows computer, the following plugin may be necessary to build with Gradle:
plugins {
id 'com.github.ManifestClasspath' version '0.1.0-RELEASE'
}
Test the build
Run a clean
to test the build configuration.
./gradlew clean
If the Carnival plugin is properly applied, you should see version information that looks something like the following.
[Carnival] Java version: 11.0.15
[Carnival] Groovy version: 3.0.9
[Carnival] Gremlin version: 3.4.10
[Carnival] Neo4j Tinkerpop version: 0.9-3.4.0
[Carnival] Neo4 Java Driver version: 4.1.1
[Carnival] Carnival version: 3.0.0
Test the app
You should now be ready to run the full lifecycle of Gradle commands.
./gradlew compileGroovy
./gradlew test
Fun With Carnival
Add the following to build.gradle:
test {
testLogging {
outputs.upToDateWhen {false}
showStandardStreams = true
}
}
Add the following to App.groovy:
void funWithCarnival() {
Carnival carnival = CarnivalTinker.create()
carnival.withTraversal { graph, g ->
g.V().each { v -> println "vertex: ${v} ${v.label}"}
g.E().each { e -> println "edge: ${e} ${e.label}"}
}
}
Add the following to AppTest.groovy:
def "fun with carnival"() {
setup:
def app = new App()
when:
app.funWithCarnival()
then:
noExceptionThrown()
}
Re-run the tests:
./gradlew test
The initial set of vertices should be printed to the console. To learn what can be done with Carnival, please see the Reference Documentation