Reworked support for local compiler plugins

This commit is contained in:
Erik C. Thauvin 2024-07-21 21:47:10 -07:00
parent 7f3fc6ff95
commit e5970bca18
Signed by: erik
GPG key ID: 776702A6A2DA330E
3 changed files with 28 additions and 30 deletions

View file

@ -585,6 +585,7 @@ public class CompileKotlinOperation extends AbstractOperation<CompileKotlinOpera
*
* @param plugins one or more plugins
* @return this class instance
* @see #plugins(File, CompilerPlugin...)
*/
public CompileKotlinOperation plugins(CompilerPlugin... plugins) {
if (kotlinHome_ != null) {
@ -600,26 +601,6 @@ public class CompileKotlinOperation extends AbstractOperation<CompileKotlinOpera
return this;
}
/**
* Provides compiler plugins.
*
* @param jars the plugins Java archives
* @param plugins one or more plugins
* @return this class instance
*/
public CompileKotlinOperation plugins(Collection<File> jars, CompilerPlugin... plugins) {
jars.forEach(jar -> {
for (var plugin : plugins) {
if (jar.getName().matches(plugin.jar)) {
plugins_.add(jar.getAbsolutePath());
break;
}
}
});
return this;
}
// Combine Kotlin sources
private Collection<File> sources(Collection<File> files, Collection<File> directories) {
var sources = new ArrayList<>(files);

View file

@ -23,14 +23,14 @@ package rife.bld.extension.kotlin;
* @since 1.0
*/
public enum CompilerPlugin {
ALL_OPEN("kotlin-allopen-compiler-plugin.jar"),
ASSIGNMENT("kotlin-assignment-compiler-plugin.jar"),
ALL_OPEN("allopen-compiler-plugin.jar"),
ASSIGNMENT("assignment-compiler-plugin.jar"),
KOTLINX_SERIALIZATION("kotlinx-serialization-compiler-plugin.jar"),
KOTLIN_SERIALIZATION("kotlin-serialization-compiler-plugin.jar"),
LOMBOK("kotlin-lombok-compiler-plugin.jar"),
NOARG("kotlin-noarg-compiler-plugin.jar"),
POWER_ASSERT("kotlin-power-assert-compiler-plugin.jar"),
SAM_WITH_RECEIVER("kotlin-sam-with-receiver-compiler-plugin.jar");
LOMBOK("lombok-compiler-plugin.jar"),
NOARG("noarg-compiler-plugin.jar"),
POWER_ASSERT("power-assert-compiler-plugin.jar"),
SAM_WITH_RECEIVER("sam-with-receiver-compiler-plugin.jar");
public final String jar;