Skip to content

Commit

Permalink
first release we publish on bintray
Browse files Browse the repository at this point in the history
  • Loading branch information
miho committed Nov 29, 2019
1 parent 75d6c51 commit b8d7a7a
Show file tree
Hide file tree
Showing 7 changed files with 172 additions and 23 deletions.
9 changes: 8 additions & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,15 @@ plugins {
id "de.undercouch.download" version "3.4.3"

id 'com.github.hierynomus.license' version '0.15.0'

id 'maven-publish'
id 'net.nemerosa.versioning' version '2.7.1'
id 'com.jfrog.bintray' version '1.8.4'
id 'com.github.ben-manes.versions' version '0.13.0'
}

apply from: 'gradle/publishing.gradle'

repositories {
jcenter()
mavenCentral()
Expand All @@ -23,7 +30,7 @@ ext.isLinux = runsOn('linux')
ext.isMacOS = runsOn('mac')

wrapper {
gradleVersion = '6.0-rc-2'
gradleVersion = '6.0'
}

sourceCompatibility = '11'
Expand Down
25 changes: 25 additions & 0 deletions gradle/project-info.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
// -----------------------------------------------------------------------------
// publishing information
// -----------------------------------------------------------------------------
ext.publishing.artifactId = project.name.toLowerCase()
ext.publishing.groupId = 'eu.mihosoft.nativefx'
ext.publishing.versionId = '0.2.0'

ext.publishing.developerName = 'Michael Hoffer'
ext.publishing.developerAlias = 'miho'
ext.publishing.developerEmail = '[email protected]'
ext.publishing.inceptionYear = '2019'

ext.publishing.bintray.repo = 'NativeFX'
ext.publishing.bintray.userOrg = 'miho'
ext.publishing.bintray.name = project.name

ext.publishing.desc = 'Native rendering for JavaFX via shared memory.'
ext.publishing.license = 'Apache-2.0'
ext.publishing.licenseUrl = 'https://github.com/miho/NativeFX/blob/master/LICENSE'
ext.publishing.labels = ['nativefx', 'javafx', 'native rendering', 'shared memory']
ext.publishing.websiteUrl = 'https://github.com/miho/NativeFX'
ext.publishing.issueTrackerUrl = 'https://github.com/miho/NativeFX/issues'
ext.publishing.vcsUrl = 'https://github.com/miho/NativeFX.git'

ext.publishing.pomName = ext.publishing.artifactId
122 changes: 122 additions & 0 deletions gradle/publishing.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
// -----------------------------------------------------------------------------
// Collect publishing information
// -----------------------------------------------------------------------------
ext.publishing = [:]
ext.publishing.bintray = [:]

ext.publishing.pomName = ext.publishing.artifactId

apply from: "gradle/project-info.gradle"

// -----------------------------------------------------------------------------
// Performs publishing
// -----------------------------------------------------------------------------

task javadocJar(type: Jar, dependsOn: javadoc) {
classifier = 'javadoc'
from javadoc.destinationDir
}

// create one jar for the source files
task sourcesJar(type: Jar, dependsOn: classes) {
classifier = 'sources'
from sourceSets.main.allSource
}

artifacts {
archives jar
archives javadocJar
archives sourcesJar
}
Date buildTimeAndDate = new Date()
ext {
buildDate = new java.text.SimpleDateFormat('yyyy-MM-dd').format(buildTimeAndDate)
buildTime = new java.text.SimpleDateFormat('HH:mm:ss.SSSZ').format(buildTimeAndDate)
}

jar {
manifest {
attributes(
'Built-By': System.properties['user.name'],
'Created-By': System.properties['java.version'] + " (" + System.properties['java.vendor'] + " " + System.properties['java.vm.version'] + ")",
'Build-Date': project.buildDate,
'Build-Time': project.buildTime,
'Build-Revision': versioning.info.commit,
'Specification-Title': project.name,
'Specification-Version': project.version,
'Implementation-Title': project.name,
'Implementation-Version': project.version
)
}
}


def pomConfig = {
name ext.publishing.pomName
description ext.publishing.desc
url ext.publishing.websiteUrl
inceptionYear ext.publishing.inceptionYear
licenses {
license([:]) {
name ext.publishing.license
url ext.publishing.licenseUrl
distribution 'repo'
}
}
scm {
url ext.publishing.vcsUrl
connection ext.publishing.vcsUrl
developerConnection ext.publishing.vcsUrl
}
developers {
developer {
id ext.publishing.developerNameAlias
name ext.publishing.developerName
}
}
}

publishing {
publications {
mavenCustom(MavenPublication) {
groupId publishing.groupId
artifactId publishing.artifactId
version publishing.versionId
from components.java
artifact sourcesJar
artifact javadocJar

pom.withXml {
def root = asNode()
root.appendNode 'description', publishing.desc
root.children().last() + pomConfig
}
}
}
}

if (!project.hasProperty('bintrayUsername')) ext.bintrayUsername = ''
if (!project.hasProperty('bintrayApiKey')) ext.bintrayApiKey = ''

bintray {
user = project.bintrayUsername
key = project.bintrayApiKey
publications = ['mavenCustom']
pkg {
repo = publishing.bintray.repo
userOrg = publishing.bintray.userOrg
name = publishing.bintray.name
desc = publishing.desc
licenses = [publishing.license]
labels = publishing.labels
websiteUrl = publishing.websiteUrl
issueTrackerUrl = publishing.issueTrackerUrl
vcsUrl = publishing.vcsUrl
publicDownloadNumbers = true

version {
name = publishing.versionId
vcsTag = 'v' + publishing.versionId
}
}
}
Binary file modified gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.0-rc-2-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-6.0-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
35 changes: 15 additions & 20 deletions gradlew
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
Expand Down Expand Up @@ -125,8 +125,8 @@ if $darwin; then
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
fi

# For Cygwin, switch paths to Windows format before running java
if $cygwin ; then
# For Cygwin or MSYS, switch paths to Windows format before running java
if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
JAVACMD=`cygpath --unix "$JAVACMD"`
Expand Down Expand Up @@ -154,19 +154,19 @@ if $cygwin ; then
else
eval `echo args$i`="\"$arg\""
fi
i=$((i+1))
i=`expr $i + 1`
done
case $i in
(0) set -- ;;
(1) set -- "$args0" ;;
(2) set -- "$args0" "$args1" ;;
(3) set -- "$args0" "$args1" "$args2" ;;
(4) set -- "$args0" "$args1" "$args2" "$args3" ;;
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
0) set -- ;;
1) set -- "$args0" ;;
2) set -- "$args0" "$args1" ;;
3) set -- "$args0" "$args1" "$args2" ;;
4) set -- "$args0" "$args1" "$args2" "$args3" ;;
5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
esac
fi

Expand All @@ -175,14 +175,9 @@ save () {
for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
echo " "
}
APP_ARGS=$(save "$@")
APP_ARGS=`save "$@"`

# Collect all arguments for the java command, following the shell quoting and substitution rules
eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"

# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
cd "$(dirname "$0")"
fi

exec "$JAVACMD" "$@"
2 changes: 1 addition & 1 deletion gradlew.bat
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
@rem you may not use this file except in compliance with the License.
@rem You may obtain a copy of the License at
@rem
@rem http://www.apache.org/licenses/LICENSE-2.0
@rem https://www.apache.org/licenses/LICENSE-2.0
@rem
@rem Unless required by applicable law or agreed to in writing, software
@rem distributed under the License is distributed on an "AS IS" BASIS,
Expand Down

0 comments on commit b8d7a7a

Please sign in to comment.