[Build] Migrate from Bintray to Maven Central
This commit is contained in:
1 parent
041e1329d5
commit
3c0fb93ea0
9 files changed
+98
-136
No files matched your search
@@ -24,6 +24,7 @@ logs/
|
||||
*.zip
|
||||
*.tar.gz
|
||||
*.rar
|
||||
*.gpg
|
||||
|
||||
# Gradle
|
||||
.gradletasknamecache
|
||||
|
||||
@@ -186,7 +186,7 @@
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright [yyyy] [name of copyright owner]
|
||||
Copyright 2019-2021, Ilya "SpaiR" Prymshyts
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
# imgui-java
|
||||
[](https://github.com/SpaiR/imgui-java/actions?query=workflow%3A%22CI+Build%22)
|
||||
[](https://javadoc.io/doc/io.imgui.java/imgui-java-binding)
|
||||
[](https://javadoc.io/doc/io.imgui.java/imgui-java-app)
|
||||
[](https://github.com/SpaiR/imgui-java/actions?query=workflow%3A%22CI+Build%22)
|
||||
[](https://search.maven.org/artifact/io.github.spair/imgui-java-binding)
|
||||
[](https://javadoc.io/doc/io.github.spair/imgui-java-binding)
|
||||
[](https://javadoc.io/doc/io.github.spair/imgui-java-app)
|
||||
|
||||
JNI based binding for [Dear ImGui](https://github.com/ocornut/imgui) with no dependencies.<br>
|
||||
Read official [documentation](https://github.com/ocornut/imgui#usage) and [wiki](https://github.com/ocornut/imgui/wiki) to see how to work with Dear ImGui.
|
||||
@@ -69,7 +70,7 @@ public class Main extends Application {
|
||||
}
|
||||
}
|
||||
```
|
||||
Read `imgui.app.Application` [javadoc](https://javadoc.io/doc/io.imgui.java/imgui-java-app) to understand how it works under the hood.
|
||||
Read `imgui.app.Application` [javadoc](https://javadoc.io/doc/io.github.spair/imgui-java-app) to understand how it works under the hood.
|
||||
|
||||
#### Dependencies
|
||||
|
||||
@@ -78,11 +79,11 @@ Read `imgui.app.Application` [javadoc](https://javadoc.io/doc/io.imgui.java/imgu
|
||||
|
||||
```
|
||||
repositories {
|
||||
jcenter()
|
||||
mavenCentral()
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation "io.imgui.java:imgui-java-app:1.80-1.5.0"
|
||||
implementation "io.github.spair:imgui-java-app:1.80-1.5.0"
|
||||
}
|
||||
```
|
||||
</details>
|
||||
@@ -91,16 +92,9 @@ dependencies {
|
||||
<summary><b>Maven</b></summary>
|
||||
|
||||
```
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>jcenter</id>
|
||||
<url>https://jcenter.bintray.com/</url>
|
||||
</repository>
|
||||
</repositories>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>io.imgui.java</groupId>
|
||||
<groupId>io.github.spair</groupId>
|
||||
<artifactId>imgui-java-app</artifactId>
|
||||
<version>1.80-1.5.0</version>
|
||||
</dependency>
|
||||
@@ -129,7 +123,6 @@ Feel free to add other platforms: `imgui-java-natives-windows-x86`, `imgui-java-
|
||||
|
||||
```
|
||||
repositories {
|
||||
jcenter()
|
||||
mavenCentral()
|
||||
}
|
||||
|
||||
@@ -146,10 +139,10 @@ dependencies {
|
||||
implementation "org.lwjgl:lwjgl$it::natives-windows"
|
||||
}
|
||||
|
||||
implementation "io.imgui.java:imgui-java-binding:$imguiVersion"
|
||||
implementation "io.imgui.java:imgui-java-lwjgl3:$imguiVersion"
|
||||
implementation "io.github.spair:imgui-java-binding:$imguiVersion"
|
||||
implementation "io.github.spair:imgui-java-lwjgl3:$imguiVersion"
|
||||
|
||||
implementation "io.imgui.java:imgui-java-natives-windows:$imguiVersion"
|
||||
implementation "io.github.spair:imgui-java-natives-windows:$imguiVersion"
|
||||
}
|
||||
```
|
||||
</details>
|
||||
@@ -158,13 +151,6 @@ dependencies {
|
||||
<summary><b>Maven</b></summary>
|
||||
|
||||
```
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>jcenter</id>
|
||||
<url>https://jcenter.bintray.com/</url>
|
||||
</repository>
|
||||
</repositories>
|
||||
|
||||
<properties>
|
||||
<lwjgl.version>3.2.3</lwjgl.version>
|
||||
<imgui.java.version>1.80-1.5.0</imgui.java.version>
|
||||
@@ -212,17 +198,17 @@ dependencies {
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.imgui.java</groupId>
|
||||
<groupId>io.github.spair</groupId>
|
||||
<artifactId>imgui-java-binding</artifactId>
|
||||
<version>${imgui.java.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.imgui.java</groupId>
|
||||
<groupId>io.github.spair</groupId>
|
||||
<artifactId>imgui-java-lwjgl3</artifactId>
|
||||
<version>${imgui.java.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.imgui.java</groupId>
|
||||
<groupId>io.github.spair</groupId>
|
||||
<artifactId>imgui-java-natives-windows</artifactId>
|
||||
<version>${imgui.java.version}</version>
|
||||
</dependency>
|
||||
@@ -258,7 +244,7 @@ One important thing is how natives structs work. All of them have a public field
|
||||
By changing the pointer it's possible to use the same Java instance to work with different native structs.<br>
|
||||
Most of the time you can ignore this fact and just work with objects in a common way.
|
||||
|
||||
Read [javadoc](https://javadoc.io/doc/io.imgui.java/imgui-java-binding) and source comments to get more info about how to do specific stuff.
|
||||
Read [javadoc](https://javadoc.io/doc/io.github.spair/imgui-java-binding) and source comments to get more info about how to do specific stuff.
|
||||
|
||||
# How to Build Native Libraries
|
||||
### Windows
|
||||
|
||||
@@ -1,7 +1,3 @@
|
||||
plugins {
|
||||
id 'com.jfrog.bintray' apply false
|
||||
}
|
||||
|
||||
allprojects {
|
||||
group 'imgui-java'
|
||||
version property('version')
|
||||
|
||||
+3
-23
@@ -2,8 +2,8 @@ plugins {
|
||||
id 'java-library'
|
||||
id 'io.freefair.lombok' version '5.3.0'
|
||||
id 'checkstyle'
|
||||
id 'com.jfrog.bintray'
|
||||
id 'maven-publish'
|
||||
id 'signing'
|
||||
}
|
||||
|
||||
sourceCompatibility = 1.8
|
||||
@@ -48,25 +48,5 @@ task javadocJar(type: Jar, dependsOn: javadoc) {
|
||||
from javadoc.destinationDir
|
||||
}
|
||||
|
||||
publishing {
|
||||
publications {
|
||||
MyPublication(MavenPublication) {
|
||||
from components.java
|
||||
groupId 'io.imgui.java'
|
||||
artifactId 'imgui-java-app'
|
||||
artifact sourcesJar
|
||||
artifact javadocJar
|
||||
version property('version')
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bintray {
|
||||
user = System.getenv('BINTRAY_USER')
|
||||
key = System.getenv('BINTRAY_API_KEY')
|
||||
publications = ['MyPublication']
|
||||
pkg {
|
||||
repo = 'io.imgui.java'
|
||||
name = 'imgui-java-app'
|
||||
}
|
||||
}
|
||||
apply from: "$rootDir/publish.gradle"
|
||||
configurePublishing('imgui-java-app', 'Application wrapper for Dear ImGui')
|
||||
@@ -1,7 +1,7 @@
|
||||
plugins {
|
||||
id 'java'
|
||||
id 'com.jfrog.bintray'
|
||||
id 'maven-publish'
|
||||
id 'signing'
|
||||
}
|
||||
|
||||
task sourcesJar(type: Jar, dependsOn: classes) {
|
||||
@@ -9,23 +9,34 @@ task sourcesJar(type: Jar, dependsOn: classes) {
|
||||
from sourceSets.main.allSource
|
||||
}
|
||||
|
||||
def packageName = 'natives-linux'
|
||||
task javadocJar(type: Jar, dependsOn: javadoc) {
|
||||
archiveClassifier.set('javadoc')
|
||||
from javadoc.destinationDir
|
||||
}
|
||||
|
||||
def packageName = 'imgui-java-natives-linux'
|
||||
def packageDesc = 'Native binaries for imgui-java binding for 64bit Linux'
|
||||
def libName = 'libimgui-java64.so'
|
||||
|
||||
if (System.getProperty('deployWin32')) {
|
||||
packageName = 'imgui-java-natives-windows-x86'
|
||||
packageDesc = 'Native binaries for imgui-java binding for 32bit Windows'
|
||||
libName = 'imgui-java.dll'
|
||||
} else if (System.getProperty('deployWin64')) {
|
||||
packageName = 'imgui-java-natives-windows'
|
||||
packageDesc = 'Native binaries for imgui-java binding for 64bit Windows'
|
||||
libName = 'imgui-java64.dll'
|
||||
} else if (System.getProperty('deployLinux32')) {
|
||||
packageName = 'imgui-java-natives-linux-x86'
|
||||
packageDesc = 'Native binaries for imgui-java binding for 32bit Linux'
|
||||
libName = 'libimgui-java.so'
|
||||
} else if (System.getProperty('deployLinux64')) {
|
||||
packageName = 'imgui-java-natives-linux'
|
||||
packageDesc = 'Native binaries for imgui-java binding for 64bit Linux'
|
||||
libName = 'libimgui-java64.so'
|
||||
} else if (System.getProperty('deployMacOs64')) {
|
||||
packageName = 'imgui-java-natives-macos'
|
||||
packageDesc = 'Native binaries for imgui-java binding for 64bit MacOS'
|
||||
libName = 'libimgui-java64.dylib'
|
||||
}
|
||||
|
||||
@@ -36,24 +47,5 @@ jar {
|
||||
}
|
||||
}
|
||||
|
||||
publishing {
|
||||
publications {
|
||||
MyPublication(MavenPublication) {
|
||||
from components.java
|
||||
groupId 'io.imgui.java'
|
||||
artifactId packageName
|
||||
artifact sourcesJar
|
||||
version property('version')
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bintray {
|
||||
user = System.getenv('BINTRAY_USER')
|
||||
key = System.getenv('BINTRAY_API_KEY')
|
||||
publications = ['MyPublication']
|
||||
pkg {
|
||||
repo = 'io.imgui.java'
|
||||
name = packageName
|
||||
}
|
||||
}
|
||||
apply from: "$rootDir/publish.gradle"
|
||||
configurePublishing(packageName, packageDesc)
|
||||
@@ -3,8 +3,8 @@ import imgui.generate.GenerateLibs
|
||||
plugins {
|
||||
id 'java'
|
||||
id 'checkstyle'
|
||||
id 'com.jfrog.bintray'
|
||||
id 'maven-publish'
|
||||
id 'signing'
|
||||
}
|
||||
|
||||
sourceCompatibility = 1.8
|
||||
@@ -31,25 +31,5 @@ task javadocJar(type: Jar, dependsOn: javadoc) {
|
||||
from javadoc.destinationDir
|
||||
}
|
||||
|
||||
publishing {
|
||||
publications {
|
||||
MyPublication(MavenPublication) {
|
||||
from components.java
|
||||
groupId 'io.imgui.java'
|
||||
artifactId 'imgui-java-binding'
|
||||
artifact sourcesJar
|
||||
artifact javadocJar
|
||||
version property('version')
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bintray {
|
||||
user = System.getenv('BINTRAY_USER')
|
||||
key = System.getenv('BINTRAY_API_KEY')
|
||||
publications = ['MyPublication']
|
||||
pkg {
|
||||
repo = 'io.imgui.java'
|
||||
name = 'imgui-java-binding'
|
||||
}
|
||||
}
|
||||
apply from: "$rootDir/publish.gradle"
|
||||
configurePublishing('imgui-java-binding', 'JNI based binding for Dear ImGui')
|
||||
@@ -1,26 +1,13 @@
|
||||
import org.gradle.internal.os.OperatingSystem
|
||||
|
||||
plugins {
|
||||
id 'java'
|
||||
id 'checkstyle'
|
||||
id 'com.jfrog.bintray'
|
||||
id 'maven-publish'
|
||||
id 'signing'
|
||||
}
|
||||
|
||||
sourceCompatibility = 1.8
|
||||
|
||||
switch (OperatingSystem.current()) {
|
||||
case OperatingSystem.LINUX:
|
||||
project.ext.lwjglNatives = 'natives-linux'
|
||||
break
|
||||
case OperatingSystem.WINDOWS:
|
||||
project.ext.lwjglNatives = 'natives-windows'
|
||||
break
|
||||
case OperatingSystem.MAC_OS:
|
||||
project.ext.lwjglNatives = 'natives-macos'
|
||||
break
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation platform("org.lwjgl:lwjgl-bom:3.2.3")
|
||||
|
||||
@@ -36,24 +23,10 @@ task sourcesJar(type: Jar, dependsOn: classes) {
|
||||
from sourceSets.main.allSource
|
||||
}
|
||||
|
||||
publishing {
|
||||
publications {
|
||||
MyPublication(MavenPublication) {
|
||||
from components.java
|
||||
groupId 'io.imgui.java'
|
||||
artifactId 'imgui-java-lwjgl3'
|
||||
artifact sourcesJar
|
||||
version property('version')
|
||||
}
|
||||
}
|
||||
task javadocJar(type: Jar, dependsOn: javadoc) {
|
||||
archiveClassifier.set('javadoc')
|
||||
from javadoc.destinationDir
|
||||
}
|
||||
|
||||
bintray {
|
||||
user = System.getenv('BINTRAY_USER')
|
||||
key = System.getenv('BINTRAY_API_KEY')
|
||||
publications = ['MyPublication']
|
||||
pkg {
|
||||
repo = 'io.imgui.java'
|
||||
name = 'imgui-java-lwjgl3'
|
||||
}
|
||||
}
|
||||
apply from: "$rootDir/publish.gradle"
|
||||
configurePublishing('imgui-java-lwjgl3', 'Backend LWJGL3 implementation for imgui-java')
|
||||
@@ -0,0 +1,54 @@
|
||||
ext.configurePublishing = { packageName, packageDesc ->
|
||||
publishing {
|
||||
repositories {
|
||||
maven {
|
||||
name = 'MavenCentral'
|
||||
def releasesRepoUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2'
|
||||
def snapshotsRepoUrl = 'https://oss.sonatype.org/content/repositories/snapshots'
|
||||
url = version.endsWith('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl
|
||||
credentials {
|
||||
username = findProperty('nexusUpdId') ?: ''
|
||||
password = findProperty('nexusUpdPass') ?: ''
|
||||
}
|
||||
}
|
||||
}
|
||||
publications {
|
||||
mavenJava(MavenPublication) {
|
||||
groupId = 'io.github.spair'
|
||||
artifactId = packageName
|
||||
version = property('version')
|
||||
|
||||
from components.java
|
||||
artifact sourcesJar
|
||||
artifact javadocJar
|
||||
|
||||
pom {
|
||||
name = packageName
|
||||
description = packageDesc
|
||||
url = 'https://github.com/SpaiR/imgui-java'
|
||||
licenses {
|
||||
license {
|
||||
name = 'The Apache License, Version 2.0'
|
||||
url = 'http://www.apache.org/licenses/LICENSE-2.0.txt'
|
||||
}
|
||||
}
|
||||
developers {
|
||||
developer {
|
||||
id = 'SpaiR'
|
||||
name = 'Ilya Prymshyts'
|
||||
email = 'klimbetoo@gmail.com'
|
||||
}
|
||||
}
|
||||
scm {
|
||||
connection = 'scm:git:https://github.com/SpaiR/imgui-java.git'
|
||||
developerConnection = 'scm:git:https://github.com/SpaiR/imgui-java.git'
|
||||
url = 'https://github.com/SpaiR/imgui-java.git'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
signing {
|
||||
sign publishing.publications.mavenJava
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user