An open API service indexing awesome lists of open source software.

https://github.com/elide-dev/maven

Maven plugin for using Elide
https://github.com/elide-dev/maven

build-acceleration elide elide-runtime java javac kotlin maven maven-plugin

Last synced: 27 days ago
JSON representation

Maven plugin for using Elide

Awesome Lists containing this project

README

          

# Elide Maven Plugin

This plugin can be consumed in a Maven project to use [Elide](https://elide.dev) for compiling Java and Kotlin sources.

> [!WARNING]
> This plugin is currently under development.

## Features

- [x] Swap out `javac ...` for `elide javac -- ...`
- [x] Supports explicit path to `elide`
- [x] Resolve `elide` via the `PATH`
- [x] Swap out `kotlinc ...` for `elide kotlinc -- ...`
- [ ] Usability of Elide as a Maven toolchain

## Usage

### Java

Configuring Elide as your `javac` compiler:

**`pom.xml`**
```xml



maven-compiler-plugin
3.15.0


dev.elide
elide-plexus-compilers
1.0.0



elide


```

> [!TIP]
> See the [Java sample project](sample-java) for a usage example. Elide also provides
> a [Gradle plugin](https://github.com/elide-dev/gradle).

### Kotlin

Configuring the Elide Kotlin plugin is done the exact same way as configuring the Kotlin Maven plugin, just replacing
the plugin coordinates:

**`pom.xml`**
```xml

src/main/kotlin
src/test/kotlin


dev.elide
elide-kotlin-maven-plugin
1.0.0


compile

compile



test-compile

test-compile




```

> [!TIP]
> See the [Kotlin sample project](sample-kotlin) for a usage example.

### Mixed Java and Kotlin

By combining the Kotlin configuration and Java compiler replacement, mixed Java and Kotlin sources can be compiled with
Elide:

**`pom.xml`**

```xml



dev.elide
elide-kotlin-maven-plugin
1.0.0


compile

compile



${project.basedir}/src/main/kotlin
${project.basedir}/src/main/java




test-compile

test-compile



${project.basedir}/src/test/kotlin
${project.basedir}/src/test/java






org.apache.maven.plugins
maven-compiler-plugin
3.15.0


dev.elide
elide-plexus-compilers
1.0.0



elide



default-compile
none


default-testCompile
none


java-compile
compile

compile



java-test-compile
test-compile

testCompile




```

> [!TIP]
> See the [Mixed sources sample project](sample-mixed) for a usage example.