diff --git a/java/build.gradle.kts b/java/build.gradle.kts index 47fa76e46b..11349f7e07 100644 --- a/java/build.gradle.kts +++ b/java/build.gradle.kts @@ -68,7 +68,7 @@ tasks.register("copyCore"){ into(coreProject.layout.projectDirectory.dir("library")) } -val legacyLibraries = arrayOf("io","net") +val legacyLibraries = emptyArray() legacyLibraries.forEach { library -> tasks.register("library-$library-extraResources"){ val build = project(":java:libraries:$library").tasks.named("build") @@ -87,7 +87,7 @@ legacyLibraries.forEach { library -> } } -val libraries = arrayOf("dxf", "pdf", "serial", "svg") +val libraries = arrayOf("dxf", "io", "net", "pdf", "serial", "svg") libraries.forEach { library -> val name = "create-$library-library" diff --git a/java/libraries/io/build.gradle.kts b/java/libraries/io/build.gradle.kts index a176f03df7..f6af4b2b13 100644 --- a/java/libraries/io/build.gradle.kts +++ b/java/libraries/io/build.gradle.kts @@ -1 +1,92 @@ -ant.importBuild("build.xml") \ No newline at end of file +import com.vanniktech.maven.publish.SonatypeHost + +plugins { + java + alias(libs.plugins.mavenPublish) +} + +sourceSets { + main { + java { + srcDirs("src") + } + } +} + +repositories { + mavenCentral() +} + +dependencies { + compileOnly(project(":core")) +} + +tasks.register("createLibrary") { + dependsOn("jar") + into(layout.buildDirectory.dir("library")) + + from(layout.projectDirectory) { + include("library.properties") + include("examples/**") + } + + from(configurations.runtimeClasspath) { + into("library") + } + + from(tasks.jar) { + into("library") + rename { "io.jar" } + } + + from(layout.projectDirectory.dir("library")) { + include("linux-arm64/**") + include("linux-armv6hf/**") + include("linux32/**") + include("linux64/**") + into("library") + } +} + +publishing { + repositories { + maven { + name = "App" + url = uri(project(":app").layout.buildDirectory.dir("resources-bundled/common/repository").get().asFile.absolutePath) + } + } +} + +mavenPublishing { + coordinates("$group.core", name, version.toString()) + publishToMavenCentral(SonatypeHost.CENTRAL_PORTAL, automaticRelease = true) + + signAllPublications() + + pom { + name.set("Processing IO") + description.set("Processing IO") + url.set("https://processing.org") + licenses { + license { + name.set("LGPL") + url.set("https://www.gnu.org/licenses/lgpl-2.1.html") + } + } + developers { + developer { + id.set("steftervelde") + name.set("Stef Tervelde") + } + developer { + id.set("benfry") + name.set("Ben Fry") + } + } + scm { + url.set("https://github.com/processing/processing4") + connection.set("scm:git:git://github.com/processing/processing4.git") + developerConnection.set("scm:git:ssh://git@github.com/processing/processing4.git") + } + } +} \ No newline at end of file diff --git a/java/libraries/serial/build.gradle.kts b/java/libraries/serial/build.gradle.kts index f7f1ff4136..652b1b398e 100644 --- a/java/libraries/serial/build.gradle.kts +++ b/java/libraries/serial/build.gradle.kts @@ -1,5 +1,8 @@ +import com.vanniktech.maven.publish.SonatypeHost + plugins { java + alias(libs.plugins.mavenPublish) } sourceSets { @@ -23,15 +26,61 @@ dependencies { tasks.register("createLibrary") { dependsOn("jar") into(layout.buildDirectory.dir("library")) + from(layout.projectDirectory) { include("library.properties") include("examples/**") } + from(configurations.runtimeClasspath) { into("library") } + from(tasks.jar) { into("library") rename { "serial.jar" } } -} \ No newline at end of file +} + +publishing { + repositories { + maven { + name = "App" + url = uri(project(":app").layout.buildDirectory.dir("resources-bundled/common/repository").get().asFile.absolutePath) + } + } +} + +mavenPublishing { + coordinates("$group.core", name, version.toString()) + publishToMavenCentral(SonatypeHost.CENTRAL_PORTAL, automaticRelease = true) + + signAllPublications() + + pom { + name.set("Processing Serial") + description.set("Processing Serial") + url.set("https://processing.org") + licenses { + license { + name.set("LGPL") + url.set("https://www.gnu.org/licenses/lgpl-2.1.html") + } + } + developers { + developer { + id.set("steftervelde") + name.set("Stef Tervelde") + } + developer { + id.set("benfry") + name.set("Ben Fry") + } + } + scm { + url.set("https://github.com/processing/processing4") + connection.set("scm:git:git://github.com/processing/processing4.git") + developerConnection.set("scm:git:ssh://git@github.com/processing/processing4.git") + } + } +}