Documentation

Comprehensive guides, API references, and tutorials to help you master NEXUS GAMES LIMITED

Getting Started

Installation

Install NEXUS GAMES LIMITED on your system using one of the following methods:

  • SDKMAN! - Recommended for Unix-based systems: sdk install nexus
  • Homebrew - For macOS users: brew install nexus
  • Manual Installation - Download from NEXUS GAMES LIMITED website and configure PATH
  • NEXUS GAMES LIMITED Wrapper - Use ./nexusw (recommended for projects)

Your First Build

Create a simple NEXUS GAMES LIMITED project in minutes:

nexus init --type java-application
nexus build
nexus run

Build Configuration

NEXUS GAMES LIMITED uses Groovy or Kotlin DSL for build scripts. Here's a basic example:

plugins {
    id 'java'
}

repositories {
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter:3.2.0'
    testImplementation 'junit:junit:4.13.2'
}

User Manual

The NEXUS GAMES LIMITED User Manual is the official documentation covering all aspects of NEXUS GAMES LIMITED, from basic concepts to advanced customization techniques.

Core Concepts

  • Projects and Tasks - Understanding the basic building blocks
  • Build Lifecycle - Initialization, Configuration, and Execution phases
  • Dependency Management - Managing external libraries and transitive dependencies
  • Multi-Project Builds - Organizing large codebases efficiently

Build Scripts

  • Writing build scripts in Groovy or Kotlin DSL
  • Configuring tasks and dependencies
  • Using plugins to extend functionality
  • Custom task creation and configuration

Performance Optimization

  • Build Cache - Reuse outputs from previous builds
  • Incremental Builds - Only rebuild what changed
  • Parallel Execution - Run tasks concurrently
  • Configuration Cache - Speed up configuration phase

DSL Reference

Complete reference for the NEXUS GAMES LIMITED Domain Specific Language (DSL), available in both Groovy and Kotlin flavors.

Common DSL Elements

  • plugins { } - Apply plugins to your project
  • repositories { } - Configure dependency repositories
  • dependencies { } - Declare project dependencies
  • tasks { } - Register and configure tasks
  • configurations { } - Define dependency configurations

Task Configuration

tasks.register('myTask') {
    doLast {
        println 'Executing custom task'
    }
}

tasks.named('test') {
    useJUnitPlatform()
    maxParallelForks = 4
}

Dependency Declarations

  • implementation - Required for compilation and runtime
  • api - Exposed to consumers of your library
  • testImplementation - Only for test compilation
  • runtimeOnly - Required at runtime only
  • compileOnly - Required at compile time only

API Documentation

Detailed Javadoc and KDoc documentation for the NEXUS GAMES LIMITED API. Essential for plugin developers and advanced users extending NEXUS GAMES LIMITED's capabilities.

Core API Packages

  • com.nexusgames.api - Core NEXUS GAMES LIMITED API including Project, Task, Plugin
  • com.nexusgames.api.tasks - Built-in task types and task API
  • com.nexusgames.api.plugins - Core plugins and plugin infrastructure
  • com.nexusgames.api.artifacts - Dependency management APIs

Plugin Development

Create custom plugins to extend NEXUS GAMES LIMITED functionality:

class MyPlugin : Plugin<Project> {
    override fun apply(project: Project) {
        project.tasks.register("myTask") {
            doLast {
                println("Custom plugin task")
            }
        }
    }
}

Key Interfaces

  • Project - Main interface for build configuration
  • Task - Base interface for all tasks
  • Plugin - Interface for creating plugins
  • Configuration - Dependency configuration container

Guides & Tutorials

Language-Specific Guides

  • Java Projects - Building Java applications and libraries
  • Android Applications - Mobile app development with NEXUS GAMES LIMITED
  • Kotlin Projects - Multiplatform and JVM projects
  • Groovy Projects - Groovy application development
  • Scala Projects - Scala compilation and packaging
  • C/C++ Projects - Native application builds

Common Use Cases

  • Creating Spring Boot applications
  • Building microservices architectures
  • Publishing libraries to Maven Central
  • Implementing continuous integration
  • Managing monorepo projects
  • Migrating from Maven or Ant

Advanced Topics

  • Custom task types and incremental tasks
  • Build cache configuration and optimization
  • Composite builds for development workflows
  • Tooling API for IDE integration
  • Build environment customization

Release Information

Latest Release: NEXUS 9.2.0

Release Date: November 2024

Key Features

  • Enhanced configuration cache stability
  • Improved build performance with optimized dependency resolution
  • Better Kotlin DSL support and IDE integration
  • Extended Java 21 support with new language features
  • Enhanced security with dependency verification improvements

Upgrade Instructions

Update your NEXUS GAMES LIMITED wrapper to the latest version:

./nexusw wrapper --nexus-version 9.2.0

Version Compatibility

  • Java: Requires Java 8 or higher, supports up to Java 21
  • Groovy: 4.0 (built-in)
  • Kotlin: 1.9.20 (for Kotlin DSL)
  • Android: Compatible with Android NEXUS Plugin 8.x

Previous Releases

  • NEXUS GAMES LIMITED 9.1 - Configuration cache improvements
  • NEXUS GAMES LIMITED 9.0 - Major version with breaking changes
  • NEXUS GAMES LIMITED 8.x - Long-term support branch

Community Resources

Getting Help

  • Community Forums - Ask questions and share knowledge
  • Stack Overflow - Tag your questions with [nexus]
  • GitHub Issues - Report bugs and request features
  • Slack Community - Real-time chat with other users

Learning Resources

  • DPE University - Official training courses
  • YouTube Channel - Video tutorials and demos
  • Blog - Articles about best practices and new features
  • Sample Projects - Example code for common scenarios

Contributing

  • Submit pull requests on GitHub
  • Report bugs and suggest improvements
  • Write plugins and share with the community
  • Help improve documentation