Robocode/Gradle

From Robowiki
< Robocode
Revision as of 18:28, 17 January 2021 by Bnorm (talk | contribs) (Created page with "[https://gradle.org/ Gradle] is a build tool commonly used for JVM programming languages. It supports a powerful plugin architecture for providing build features. == Robocode...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Gradle is a build tool commonly used for JVM programming languages. It supports a powerful plugin architecture for providing build features.

Robocode Plugin

A Gradle plugin for Robocode has been created by Bnorm which automates a few pieces of the Robocode development cycle:

  1. Automatically downloads the configured version of Robocode (optionally can point at an existing install)
    1. Adds the robocode.jar file to the project compile class path
    2. If downloaded, automatically configures Robocode to point to development bin directory
  2. Flattens any dependencies into a single jar file
    1. This allows using third-party dependencies
    2. Also allows using alternative JVM languages (like Kotlin) which include their own standard library
  3. Adds tasks to Gradle for building each configured Robot and generates a Robocode compatible jar file
  4. Adds a task to Gradle for building class files and placing files in consistent directory for Robocode to read
  5. Adds a task to Gradle for running Robocode
  6. Adds a Gradle configuration with all Robocode runtime dependencies for automating targeting and movement challenges