plugins { id 'java' id 'com.jfrog.bintray' version '1.8.4' id 'maven-publish' } task sourcesJar(type: Jar, dependsOn: classes) { archiveClassifier.set('sources') from sourceSets.main.allSource } def packageName = 'natives-linux' def libName = 'libimgui-java64.so' if (System.getProperty('deployWin32')) { packageName = 'imgui-java-natives-windows-x86' libName = 'imgui-java.dll' } else if (System.getProperty('deployWin64')) { packageName = 'imgui-java-natives-windows' libName = 'imgui-java64.dll' } else if (System.getProperty('deployLinux32')) { packageName = 'imgui-java-natives-linux-x86' libName = 'libimgui-java.so' } else if (System.getProperty('deployLinux64')) { packageName = 'imgui-java-natives-linux' libName = 'libimgui-java64.so' } else if (System.getProperty('deployMacOs64')) { packageName = 'imgui-java-natives-macos' libName = 'libimgui-java64.dylib' } jar { from('../bin') { include "$libName" // it's ok into 'io/imgui/java/native-bin/' } } 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 } }