Disabled Dokka for testing
This commit is contained in:
parent
c3c4ae20ad
commit
7720a93d0a
1 changed files with 73 additions and 67 deletions
|
@ -33,11 +33,11 @@ package net.thauvin.erik;
|
||||||
|
|
||||||
import rife.bld.BuildCommand;
|
import rife.bld.BuildCommand;
|
||||||
import rife.bld.Project;
|
import rife.bld.Project;
|
||||||
import rife.bld.extension.*;
|
import rife.bld.extension.CompileKotlinOperation;
|
||||||
import rife.bld.extension.dokka.DokkaOperation;
|
import rife.bld.extension.DetektOperation;
|
||||||
import rife.bld.extension.dokka.LoggingLevel;
|
import rife.bld.extension.GeneratedVersionOperation;
|
||||||
import rife.bld.extension.dokka.OutputFormat;
|
import rife.bld.extension.JacocoReportOperation;
|
||||||
import rife.bld.extension.dokka.SourceSet;
|
import rife.bld.extension.kotlin.CompilerPlugin;
|
||||||
import rife.bld.operations.exceptions.ExitStatusException;
|
import rife.bld.operations.exceptions.ExitStatusException;
|
||||||
import rife.bld.publish.PomBuilder;
|
import rife.bld.publish.PomBuilder;
|
||||||
import rife.bld.publish.PublishDeveloper;
|
import rife.bld.publish.PublishDeveloper;
|
||||||
|
@ -48,6 +48,9 @@ import rife.tools.exceptions.FileUtilsErrorException;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.logging.ConsoleHandler;
|
||||||
|
import java.util.logging.Level;
|
||||||
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
import static rife.bld.dependencies.Repository.*;
|
import static rife.bld.dependencies.Repository.*;
|
||||||
import static rife.bld.dependencies.Scope.*;
|
import static rife.bld.dependencies.Scope.*;
|
||||||
|
@ -62,25 +65,27 @@ public class AkismetBuild extends Project {
|
||||||
version = version(1, 1, 0, "SNAPSHOT");
|
version = version(1, 1, 0, "SNAPSHOT");
|
||||||
|
|
||||||
javaRelease = 11;
|
javaRelease = 11;
|
||||||
|
|
||||||
downloadSources = true;
|
downloadSources = true;
|
||||||
autoDownloadPurge = true;
|
autoDownloadPurge = true;
|
||||||
repositories = List.of(MAVEN_LOCAL, MAVEN_CENTRAL);
|
repositories = List.of(MAVEN_LOCAL, MAVEN_CENTRAL);
|
||||||
|
|
||||||
var okHttp = version(4, 12, 0);
|
var okHttp = version(4, 12, 0);
|
||||||
final var kotlin = version(1, 9, 24);
|
final var kotlin = version(2, 0, 0);
|
||||||
scope(compile)
|
scope(compile)
|
||||||
.include(dependency("org.jetbrains.kotlin", "kotlin-stdlib", kotlin))
|
.include(dependency("org.jetbrains.kotlin", "kotlin-stdlib", kotlin))
|
||||||
|
.include(dependency("org.jetbrains.kotlin", "kotlin-stdlib-jdk7", kotlin))
|
||||||
|
.include(dependency("org.jetbrains.kotlin", "kotlin-stdlib-jdk8", kotlin))
|
||||||
.include(dependency("com.squareup.okhttp3", "okhttp", okHttp))
|
.include(dependency("com.squareup.okhttp3", "okhttp", okHttp))
|
||||||
.include(dependency("com.squareup.okhttp3", "logging-interceptor", okHttp))
|
.include(dependency("com.squareup.okhttp3", "logging-interceptor", okHttp))
|
||||||
.include(dependency("org.jetbrains.kotlinx", "kotlinx-serialization-json-jvm", version(1, 6, 3)));
|
.include(dependency("org.jetbrains.kotlinx", "kotlinx-serialization-json", version(1, 7, 1)));
|
||||||
scope(provided)
|
scope(provided)
|
||||||
.include(dependency("jakarta.servlet", "jakarta.servlet-api", version(6, 0, 0)))
|
.include(dependency("jakarta.servlet", "jakarta.servlet-api", version(6, 1, 0)));
|
||||||
.include(dependency("org.jetbrains.kotlin", "kotlin-serialization-compiler-plugin", kotlin));
|
|
||||||
scope(test)
|
scope(test)
|
||||||
.include(dependency("org.mockito", "mockito-core", version(5, 12, 0)))
|
.include(dependency("org.mockito", "mockito-core", version(5, 12, 0)))
|
||||||
.include(dependency("org.jetbrains.kotlin", "kotlin-test-junit5", kotlin))
|
.include(dependency("org.jetbrains.kotlin", "kotlin-test-junit5", kotlin))
|
||||||
.include(dependency("org.junit.jupiter", "junit-jupiter", version(5, 10, 2)))
|
.include(dependency("org.junit.jupiter", "junit-jupiter", version(5, 10, 3)))
|
||||||
.include(dependency("org.junit.platform", "junit-platform-console-standalone", version(1, 10, 2)))
|
.include(dependency("org.junit.platform", "junit-platform-console-standalone", version(1, 10, 3)))
|
||||||
.include(dependency("com.willowtreeapps.assertk", "assertk-jvm", version(0, 28, 1)));
|
.include(dependency("com.willowtreeapps.assertk", "assertk-jvm", version(0, 28, 1)));
|
||||||
|
|
||||||
publishOperation()
|
publishOperation()
|
||||||
|
@ -119,26 +124,27 @@ public class AkismetBuild extends Project {
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
// Enable detailed logging for the Kotlin extension
|
// Enable detailed logging for the Kotlin extension
|
||||||
// var level = Level.ALL;
|
var level = Level.ALL;
|
||||||
// var logger = Logger.getLogger("rife.bld.extension");
|
var logger = Logger.getLogger("rife.bld.extension");
|
||||||
// var consoleHandler = new ConsoleHandler();
|
var consoleHandler = new ConsoleHandler();
|
||||||
|
|
||||||
// consoleHandler.setLevel(level);
|
consoleHandler.setLevel(level);
|
||||||
// logger.addHandler(consoleHandler);
|
logger.addHandler(consoleHandler);
|
||||||
// logger.setLevel(level);
|
logger.setLevel(level);
|
||||||
// logger.setUseParentHandlers(false);
|
logger.setUseParentHandlers(false);
|
||||||
|
|
||||||
new AkismetBuild().start(args);
|
new AkismetBuild().start(args);
|
||||||
}
|
}
|
||||||
|
|
||||||
@BuildCommand(summary = "Compiles the Kotlin project")
|
@BuildCommand(summary = "Compiles the Kotlin project")
|
||||||
@Override
|
@Override
|
||||||
public void compile() throws IOException {
|
public void compile() throws Exception {
|
||||||
genver();
|
genver();
|
||||||
new CompileKotlinOperation()
|
var op = new CompileKotlinOperation()
|
||||||
.fromProject(this)
|
.fromProject(this)
|
||||||
.plugins(libProvidedDirectory(), CompileKotlinPlugin.KOTLIN_SERIALIZATION)
|
.plugins(CompilerPlugin.KOTLIN_SERIALIZATION);
|
||||||
.execute();
|
op.compileOptions().verbose(true);
|
||||||
|
op.execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
@BuildCommand(summary = "Checks source with Detekt")
|
@BuildCommand(summary = "Checks source with Detekt")
|
||||||
|
@ -158,63 +164,69 @@ public class AkismetBuild extends Project {
|
||||||
.execute();
|
.execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
@BuildCommand(summary = "Generates documentation in HTML format")
|
// @BuildCommand(summary = "Generates documentation in HTML format")
|
||||||
public void docs() throws ExitStatusException, IOException, InterruptedException {
|
// public void docs() throws ExitStatusException, IOException, InterruptedException {
|
||||||
new DokkaOperation()
|
// new DokkaOperation()
|
||||||
.fromProject(this)
|
// .fromProject(this)
|
||||||
.loggingLevel(LoggingLevel.INFO)
|
// .loggingLevel(LoggingLevel.INFO)
|
||||||
.moduleName("Akismet Kotlin")
|
// .moduleName("Akismet Kotlin")
|
||||||
.moduleVersion(version.toString())
|
// .moduleVersion(version.toString())
|
||||||
.outputDir("docs")
|
// .outputDir("docs")
|
||||||
.outputFormat(OutputFormat.HTML)
|
// .outputFormat(OutputFormat.HTML)
|
||||||
.sourceSet(
|
// .sourceSet(
|
||||||
new SourceSet()
|
// new SourceSet()
|
||||||
.src(srcMainKotlin.getAbsolutePath())
|
// .src(srcMainKotlin)
|
||||||
.classpath(compileClasspathJars())
|
// .classpath(compileClasspathJars())
|
||||||
.classpath(providedClasspathJars())
|
// .classpath(providedClasspathJars())
|
||||||
.srcLink(srcMainKotlin.getAbsolutePath(), "https://github.com/ethauvin/" + name
|
// .srcLink(srcMainKotlin, "https://github.com/ethauvin/" + name
|
||||||
+ "/tree/master/src/main/kotlin/", "#L")
|
// + "/tree/master/src/main/kotlin/", "#L")
|
||||||
.includes("config/dokka/packages.md")
|
// .includes("config/dokka/packages.md")
|
||||||
.jdkVersion(javaRelease)
|
// .jdkVersion(javaRelease)
|
||||||
.externalDocumentationLinks("https://jakarta.ee/specifications/platform/9/apidocs/",
|
// .externalDocumentationLinks("https://jakarta.ee/specifications/platform/9/apidocs/",
|
||||||
"https://jakarta.ee/specifications/platform/9/apidocs/package-list")
|
// "https://jakarta.ee/specifications/platform/9/apidocs/package-list")
|
||||||
|
//
|
||||||
)
|
// )
|
||||||
.execute();
|
// .execute();
|
||||||
}
|
// }
|
||||||
|
|
||||||
@BuildCommand(summary = "Generates version class")
|
@BuildCommand(summary = "Generates version class")
|
||||||
public void genver() {
|
public void genver() throws Exception {
|
||||||
new GeneratedVersionOperation()
|
new GeneratedVersionOperation()
|
||||||
.fromProject(this)
|
.fromProject(this)
|
||||||
.projectName("Akismet Kotlin")
|
.projectName("Akismet Kotlin")
|
||||||
.packageName(pkg + ".akismet")
|
.packageName(pkg + ".akismet")
|
||||||
.classTemplate(new File(workDirectory(), "version.txt"))
|
.classTemplate("version.txt")
|
||||||
.directory(srcMainKotlin)
|
.directory(srcMainKotlin)
|
||||||
.extension(".kt")
|
.extension(".kt")
|
||||||
.execute();
|
.execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
@BuildCommand(summary = "Generates JaCoCo Reports")
|
@BuildCommand(summary = "Generates JaCoCo Reports")
|
||||||
public void jacoco() throws IOException {
|
public void jacoco() throws Exception {
|
||||||
new JacocoReportOperation()
|
new JacocoReportOperation()
|
||||||
.fromProject(this)
|
.fromProject(this)
|
||||||
.sourceFiles(srcMainKotlin)
|
.sourceFiles(srcMainKotlin)
|
||||||
.execute();
|
.execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
// @Override
|
||||||
public void javadoc() throws ExitStatusException, IOException, InterruptedException {
|
// public void javadoc() throws ExitStatusException, IOException, InterruptedException {
|
||||||
new DokkaOperation()
|
// new DokkaOperation()
|
||||||
.fromProject(this)
|
// .fromProject(this)
|
||||||
.loggingLevel(LoggingLevel.INFO)
|
// .loggingLevel(LoggingLevel.INFO)
|
||||||
.moduleName("Bitly Shorten")
|
// .moduleName("Bitly Shorten")
|
||||||
.moduleVersion(version.toString())
|
// .moduleVersion(version.toString())
|
||||||
.outputDir(new File(buildDirectory(), "javadoc"))
|
// .outputDir(new File(buildDirectory(), "javadoc"))
|
||||||
.outputFormat(OutputFormat.JAVADOC)
|
// .outputFormat(OutputFormat.JAVADOC)
|
||||||
.globalLinks("https://jakarta.ee/specifications/platform/9/apidocs/",
|
// .globalLinks("https://jakarta.ee/specifications/platform/9/apidocs/",
|
||||||
"https://jakarta.ee/specifications/platform/9/apidocs/package-list")
|
// "https://jakarta.ee/specifications/platform/9/apidocs/package-list")
|
||||||
.execute();
|
// .execute();
|
||||||
|
// }
|
||||||
|
|
||||||
|
@BuildCommand(value = "pom-root", summary = "Generates the POM file in the root directory")
|
||||||
|
public void pomRoot() throws FileUtilsErrorException {
|
||||||
|
PomBuilder.generateInto(publishOperation().fromProject(this).info(), dependencies(),
|
||||||
|
new File(workDirectory, "pom.xml"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -222,10 +234,4 @@ public class AkismetBuild extends Project {
|
||||||
super.publish();
|
super.publish();
|
||||||
pomRoot();
|
pomRoot();
|
||||||
}
|
}
|
||||||
|
|
||||||
@BuildCommand(value = "pom-root", summary = "Generates the POM file in the root directory")
|
|
||||||
public void pomRoot() throws FileUtilsErrorException {
|
|
||||||
PomBuilder.generateInto(publishOperation().fromProject(this).info(), dependencies(),
|
|
||||||
new File(workDirectory, "pom.xml"));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue