diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml
index c3158680..695d1c53 100644
--- a/.github/workflows/android.yml
+++ b/.github/workflows/android.yml
@@ -35,4 +35,4 @@ jobs:
env:
SONATYPE_USERNAME: ${{ secrets.SONATYPE_USERNAME }}
SONATYPE_PASSWORD: ${{ secrets.SONATYPE_PASSWORD }}
- run: ./gradlew -PSONATYPE_USERNAME="$SONATYPE_USERNAME" -PSONATYPE_PASSWORD="$SONATYPE_PASSWORD" uploadArchives
+ run: ./gradlew -PSONATYPE_USERNAME="$SONATYPE_USERNAME" -PSONATYPE_PASSWORD="$SONATYPE_PASSWORD" publish
diff --git a/build.gradle b/build.gradle
index 3e59225a..00984d0b 100644
--- a/build.gradle
+++ b/build.gradle
@@ -5,16 +5,13 @@ buildscript {
}
dependencies {
classpath 'com.android.tools.build:gradle:4.2.2'
- classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1'
}
}
allprojects {
group = 'org.mapsforge'
version = 'master-SNAPSHOT'
- ext.isReleaseVersion = !version.endsWith("SNAPSHOT")
- ext.androidBuildVersionTools = "31.0.0"
ext.gdxVersion = "1.9.10"
ext.gwtVersion = "2.8.2"
ext.slf4jVersion = "1.7.28"
@@ -31,7 +28,7 @@ allprojects {
static def androidCompileSdk() { return 31 }
// 14 for Support Library, 16 for sqlite-android
-static def androidMinSdk() { return 16 }
+static def androidMinSdk() { return 21 }
static def androidTargetSdk() { return 30 }
diff --git a/deploy.gradle b/deploy.gradle
index 606f25ad..81c0493a 100644
--- a/deploy.gradle
+++ b/deploy.gradle
@@ -1,84 +1,63 @@
apply plugin: 'signing'
-if (project.hasProperty("android")) {
- task sourcesJar(type: Jar) {
- classifier = 'sources'
- from android.sourceSets.main.java.srcDirs
- }
-
- task javadoc(type: Javadoc) {
- source = android.sourceSets.main.java.srcDirs
- classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
- classpath += project.android.libraryVariants.toList().first().javaCompileProvider.get().classpath
- }
-} else {
- task sourcesJar(type: Jar) {
- classifier = 'sources'
- from sourceSets.main.allSource
- }
+java {
+ withJavadocJar()
+ withSourcesJar()
}
-task javadocJar(type: Jar, dependsOn: javadoc) {
- classifier = 'javadoc'
- from javadoc.destinationDir
-}
-
-artifacts {
- archives javadocJar
- archives sourcesJar
-}
-
-signing {
- required { isReleaseVersion && gradle.taskGraph.hasTask("uploadArchives") }
- sign configurations.archives
-}
-
-uploadArchives {
- repositories {
- mavenDeployer {
- beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) }
-
- repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2/") {
- authentication(userName: SONATYPE_USERNAME, password: SONATYPE_PASSWORD)
- }
- snapshotRepository(url: "https://oss.sonatype.org/content/repositories/snapshots/") {
- authentication(userName: SONATYPE_USERNAME, password: SONATYPE_PASSWORD)
- }
-
- pom.project {
- packaging 'jar'
-
- name 'vtm'
- description 'OpenGL vector map library written in Java - running on Android, iOS, Desktop and within the browser.'
- url 'https://github.com/mapsforge/vtm'
-
+publishing {
+ publications {
+ maven(MavenPublication) {
+ pom {
+ name = 'VTM'
+ description = 'OpenGL vector map library - running on Android, iOS, Desktop and browser.'
+ url = 'https://github.com/mapsforge/vtm'
licenses {
license {
- name 'GNU Lesser GPL'
- url 'http://www.gnu.org/licenses/lgpl.html'
- distribution 'repo'
+ name = 'GNU Lesser GPL'
+ url = 'https://www.gnu.org/licenses/lgpl.html'
}
}
-
- scm {
- connection 'scm:git:https://github.com/mapsforge/vtm'
- developerConnection 'scm:git:https://github.com/mapsforge/vtm'
- url 'https://github.com/mapsforge/vtm'
- }
-
developers {
developer {
- id 'hannes.janetzek'
- name 'Hannes Janetzek'
- email 'hannes.janetzek@gmail.com'
+ id = 'hannes.janetzek'
+ name = 'Hannes Janetzek'
+ email = 'hannes.janetzek@gmail.com'
}
developer {
- id 'devemux86'
- name 'Emux'
- email 'devemux86@gmail.com'
+ id = 'devemux86'
+ name = 'Emux'
+ email = 'devemux86@gmail.com'
}
}
+ scm {
+ connection = 'scm:git:https://github.com/mapsforge/vtm'
+ developerConnection = 'scm:git:https://github.com/mapsforge/vtm'
+ url = 'https://github.com/mapsforge/vtm'
+ }
+ }
+ }
+ }
+ repositories {
+ maven {
+ 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 = SONATYPE_USERNAME
+ password = SONATYPE_PASSWORD
}
}
}
}
+
+signing {
+ required { !version.endsWith('SNAPSHOT') }
+ sign publishing.publications.maven
+}
+
+javadoc {
+ if (JavaVersion.current().isJava9Compatible()) {
+ options.addBooleanOption('html5', true)
+ }
+}
diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar
index f6b961fd..e708b1c0 100644
Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 4d9ca164..0f80bbf5 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
diff --git a/gradlew b/gradlew
index cccdd3d5..4f906e0c 100755
--- a/gradlew
+++ b/gradlew
@@ -1,5 +1,21 @@
#!/usr/bin/env sh
+#
+# Copyright 2015 the original author or authors.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# 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,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
##############################################################################
##
## Gradle start up script for UN*X
@@ -28,7 +44,7 @@ APP_NAME="Gradle"
APP_BASE_NAME=`basename "$0"`
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-DEFAULT_JVM_OPTS=""
+DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
@@ -66,6 +82,7 @@ esac
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+
# Determine the Java command to use to start the JVM.
if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
@@ -109,10 +126,11 @@ 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"`
# We build the pattern for arguments to be converted via cygpath
@@ -138,19 +156,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
@@ -159,14 +177,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" "$@"
diff --git a/gradlew.bat b/gradlew.bat
index f9553162..107acd32 100644
--- a/gradlew.bat
+++ b/gradlew.bat
@@ -1,3 +1,19 @@
+@rem
+@rem Copyright 2015 the original author or authors.
+@rem
+@rem Licensed under the Apache License, Version 2.0 (the "License");
+@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 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,
+@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+@rem See the License for the specific language governing permissions and
+@rem limitations under the License.
+@rem
+
@if "%DEBUG%" == "" @echo off
@rem ##########################################################################
@rem
@@ -13,15 +29,18 @@ if "%DIRNAME%" == "" set DIRNAME=.
set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%
+@rem Resolve any "." and ".." in APP_HOME to make it shorter.
+for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
+
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-set DEFAULT_JVM_OPTS=
+set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
-if "%ERRORLEVEL%" == "0" goto init
+if "%ERRORLEVEL%" == "0" goto execute
echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
@@ -35,7 +54,7 @@ goto fail
set JAVA_HOME=%JAVA_HOME:"=%
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
-if exist "%JAVA_EXE%" goto init
+if exist "%JAVA_EXE%" goto execute
echo.
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
@@ -45,28 +64,14 @@ echo location of your Java installation.
goto fail
-:init
-@rem Get command-line arguments, handling Windows variants
-
-if not "%OS%" == "Windows_NT" goto win9xME_args
-
-:win9xME_args
-@rem Slurp the command line arguments.
-set CMD_LINE_ARGS=
-set _SKIP=2
-
-:win9xME_args_slurp
-if "x%~1" == "x" goto execute
-
-set CMD_LINE_ARGS=%*
-
:execute
@rem Setup the command line
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+
@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
:end
@rem End local scope for the variables with windows NT shell
diff --git a/jni/build.gradle b/jni/build.gradle
index f44a4f36..676d4cb8 100644
--- a/jni/build.gradle
+++ b/jni/build.gradle
@@ -1,7 +1,7 @@
-apply plugin: 'java-library'
+apply plugin: 'java'
dependencies {
- api "com.badlogicgames.gdx:gdx-jnigen:$gdxVersion"
+ implementation "com.badlogicgames.gdx:gdx-jnigen:$gdxVersion"
}
sourceSets {
diff --git a/vtm-android-example/build.gradle b/vtm-android-example/build.gradle
index 4e528bb4..72291cce 100644
--- a/vtm-android-example/build.gradle
+++ b/vtm-android-example/build.gradle
@@ -24,19 +24,18 @@ dependencies {
}
android {
- compileSdkVersion androidCompileSdk()
- buildToolsVersion "$androidBuildVersionTools"
+ compileSdk androidCompileSdk()
compileOptions {
- sourceCompatibility JavaVersion.VERSION_1_7
- targetCompatibility JavaVersion.VERSION_1_7
+ sourceCompatibility JavaVersion.VERSION_1_8
+ targetCompatibility JavaVersion.VERSION_1_8
}
defaultConfig {
versionCode project.versionCode()
versionName project.versionName()
- minSdkVersion androidMinSdk()
- targetSdkVersion androidTargetSdk()
+ minSdk androidMinSdk()
+ targetSdk androidTargetSdk()
}
sourceSets {
diff --git a/vtm-android-gdx/AndroidManifest.xml b/vtm-android-gdx/AndroidManifest.xml
deleted file mode 100644
index ee2523f8..00000000
--- a/vtm-android-gdx/AndroidManifest.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
diff --git a/vtm-android-gdx/build.gradle b/vtm-android-gdx/build.gradle
index 98bb19f5..f15b2170 100644
--- a/vtm-android-gdx/build.gradle
+++ b/vtm-android-gdx/build.gradle
@@ -1,57 +1,31 @@
-apply plugin: 'com.android.library'
-apply plugin: 'com.github.dcendents.android-maven'
+apply plugin: 'java-library'
+apply plugin: 'maven-publish'
dependencies {
+ compileOnly files("${System.env.ANDROID_HOME}/platforms/android-${androidCompileSdk()}/android.jar")
api project(':vtm')
api "com.badlogicgames.gdx:gdx-backend-android:$gdxVersion"
}
-android {
- compileSdkVersion androidCompileSdk()
- buildToolsVersion "$androidBuildVersionTools"
-
- compileOptions {
- sourceCompatibility JavaVersion.VERSION_1_7
- targetCompatibility JavaVersion.VERSION_1_7
- }
-
- defaultConfig {
- versionCode project.versionCode()
- versionName project.versionName()
- minSdkVersion androidMinSdk()
- targetSdkVersion androidTargetSdk()
- }
-
- sourceSets {
- main {
- manifest.srcFile 'AndroidManifest.xml'
- java.srcDirs = ['src']
- }
- debug.setRoot('build-types/debug')
- release.setRoot('build-types/release')
- }
-
- lintOptions { abortOnError false }
+sourceSets {
+ main.java.srcDirs = ['src']
}
-android.libraryVariants.all { variant ->
- def name = variant.buildType.name
- if (name == "debug")
- return
+file('natives').eachDir() { dir ->
+ task("nativesJar-${dir.name}", type: Jar) {
+ classifier "natives-${dir.name}"
+ from(dir.path)
+ }
+}
- def jar = project.tasks.create "jar${name.capitalize()}", Jar
- jar.dependsOn variant.javaCompileProvider
- jar.exclude '**/BuildConfig.class'
- jar.exclude '**/R.class'
- jar.exclude '**/R$*.class'
- jar.from variant.javaCompileProvider.get().destinationDir
- artifacts.add('archives', jar)
-
- file('natives').eachDir() { dir ->
- def nativesJar = project.tasks.create "nativesJar${name.capitalize()}-${dir.name}", Jar
- nativesJar.classifier = "natives-${dir.name}"
- nativesJar.from(dir.path)
- artifacts.add('archives', nativesJar)
+publishing {
+ publications {
+ maven(MavenPublication) {
+ from components.java
+ file('natives').eachDir() { dir ->
+ artifact tasks["nativesJar-${dir.name}"]
+ }
+ }
}
}
diff --git a/vtm-android-mvt/AndroidManifest.xml b/vtm-android-mvt/AndroidManifest.xml
deleted file mode 100644
index 6a915c8c..00000000
--- a/vtm-android-mvt/AndroidManifest.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
diff --git a/vtm-android-mvt/build.gradle b/vtm-android-mvt/build.gradle
index b40c36b2..daa371c7 100644
--- a/vtm-android-mvt/build.gradle
+++ b/vtm-android-mvt/build.gradle
@@ -1,51 +1,22 @@
-apply plugin: 'com.android.library'
-apply plugin: 'com.github.dcendents.android-maven'
+apply plugin: 'java-library'
+apply plugin: 'maven-publish'
dependencies {
+ compileOnly files("${System.env.ANDROID_HOME}/platforms/android-${androidCompileSdk()}/android.jar")
api project(':vtm-android')
api project(':vtm-mvt')
}
-android {
- compileSdkVersion androidCompileSdk()
- buildToolsVersion "$androidBuildVersionTools"
-
- compileOptions {
- sourceCompatibility JavaVersion.VERSION_1_7
- targetCompatibility JavaVersion.VERSION_1_7
- }
-
- defaultConfig {
- versionCode project.versionCode()
- versionName project.versionName()
- minSdkVersion androidMinSdk()
- targetSdkVersion androidTargetSdk()
- }
-
- sourceSets {
- main {
- manifest.srcFile 'AndroidManifest.xml'
- java.srcDirs = ['src']
- }
- debug.setRoot('build-types/debug')
- release.setRoot('build-types/release')
- }
-
- lintOptions { abortOnError false }
+sourceSets {
+ main.java.srcDirs = ['src']
}
-android.libraryVariants.all { variant ->
- def name = variant.buildType.name
- if (name == "debug")
- return
-
- def jar = project.tasks.create "jar${name.capitalize()}", Jar
- jar.dependsOn variant.javaCompileProvider
- jar.exclude '**/BuildConfig.class'
- jar.exclude '**/R.class'
- jar.exclude '**/R$*.class'
- jar.from variant.javaCompileProvider.get().destinationDir
- artifacts.add('archives', jar)
+publishing {
+ publications {
+ maven(MavenPublication) {
+ from components.java
+ }
+ }
}
if (project.hasProperty("SONATYPE_USERNAME")) {
diff --git a/vtm-android/AndroidManifest.xml b/vtm-android/AndroidManifest.xml
deleted file mode 100644
index 26948380..00000000
--- a/vtm-android/AndroidManifest.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
diff --git a/vtm-android/build.gradle b/vtm-android/build.gradle
index e9421d21..034b91ab 100644
--- a/vtm-android/build.gradle
+++ b/vtm-android/build.gradle
@@ -1,57 +1,31 @@
-apply plugin: 'com.android.library'
-apply plugin: 'com.github.dcendents.android-maven'
+apply plugin: 'java-library'
+apply plugin: 'maven-publish'
dependencies {
+ compileOnly files("${System.env.ANDROID_HOME}/platforms/android-${androidCompileSdk()}/android.jar")
api project(':vtm')
api 'com.caverock:androidsvg:1.4'
}
-android {
- compileSdkVersion androidCompileSdk()
- buildToolsVersion "$androidBuildVersionTools"
-
- compileOptions {
- sourceCompatibility JavaVersion.VERSION_1_7
- targetCompatibility JavaVersion.VERSION_1_7
- }
-
- defaultConfig {
- versionCode project.versionCode()
- versionName project.versionName()
- minSdkVersion androidMinSdk()
- targetSdkVersion androidTargetSdk()
- }
-
- sourceSets {
- main {
- manifest.srcFile 'AndroidManifest.xml'
- java.srcDirs = ['src']
- }
- debug.setRoot('build-types/debug')
- release.setRoot('build-types/release')
- }
-
- lintOptions { abortOnError false }
+sourceSets {
+ main.java.srcDirs = ['src']
}
-android.libraryVariants.all { variant ->
- def name = variant.buildType.name
- if (name == "debug")
- return
+file('natives').eachDir() { dir ->
+ task("nativesJar-${dir.name}", type: Jar) {
+ classifier "natives-${dir.name}"
+ from(dir.path)
+ }
+}
- def jar = project.tasks.create "jar${name.capitalize()}", Jar
- jar.dependsOn variant.javaCompileProvider
- jar.exclude '**/BuildConfig.class'
- jar.exclude '**/R.class'
- jar.exclude '**/R$*.class'
- jar.from variant.javaCompileProvider.get().destinationDir
- artifacts.add('archives', jar)
-
- file('natives').eachDir() { dir ->
- def nativesJar = project.tasks.create "nativesJar${name.capitalize()}-${dir.name}", Jar
- nativesJar.classifier = "natives-${dir.name}"
- nativesJar.from(dir.path)
- artifacts.add('archives', nativesJar)
+publishing {
+ publications {
+ maven(MavenPublication) {
+ from components.java
+ file('natives').eachDir() { dir ->
+ artifact tasks["nativesJar-${dir.name}"]
+ }
+ }
}
}
diff --git a/vtm-app/build.gradle b/vtm-app/build.gradle
index 0f552358..19acbd9c 100644
--- a/vtm-app/build.gradle
+++ b/vtm-app/build.gradle
@@ -10,19 +10,18 @@ dependencies {
}
android {
- compileSdkVersion androidCompileSdk()
- buildToolsVersion "$androidBuildVersionTools"
+ compileSdk androidCompileSdk()
compileOptions {
- sourceCompatibility JavaVersion.VERSION_1_7
- targetCompatibility JavaVersion.VERSION_1_7
+ sourceCompatibility JavaVersion.VERSION_1_8
+ targetCompatibility JavaVersion.VERSION_1_8
}
defaultConfig {
versionCode project.versionCode()
versionName project.versionName()
- minSdkVersion androidMinSdk()
- targetSdkVersion androidTargetSdk()
+ minSdk androidMinSdk()
+ targetSdk androidTargetSdk()
}
sourceSets {
diff --git a/vtm-desktop-lwjgl/build.gradle b/vtm-desktop-lwjgl/build.gradle
index 098f633c..fd269e96 100644
--- a/vtm-desktop-lwjgl/build.gradle
+++ b/vtm-desktop-lwjgl/build.gradle
@@ -1,5 +1,5 @@
apply plugin: 'java-library'
-apply plugin: 'maven'
+apply plugin: 'maven-publish'
dependencies {
api project(':vtm-desktop')
@@ -7,8 +7,14 @@ dependencies {
}
sourceSets {
- main {
- java.srcDirs = ['src']
+ main.java.srcDirs = ['src']
+}
+
+publishing {
+ publications {
+ maven(MavenPublication) {
+ from components.java
+ }
}
}
diff --git a/vtm-desktop-lwjgl3/build.gradle b/vtm-desktop-lwjgl3/build.gradle
index 67350385..98e2e185 100644
--- a/vtm-desktop-lwjgl3/build.gradle
+++ b/vtm-desktop-lwjgl3/build.gradle
@@ -1,5 +1,5 @@
apply plugin: 'java-library'
-apply plugin: 'maven'
+apply plugin: 'maven-publish'
dependencies {
api project(':vtm-desktop')
@@ -7,8 +7,14 @@ dependencies {
}
sourceSets {
- main {
- java.srcDirs = ['src']
+ main.java.srcDirs = ['src']
+}
+
+publishing {
+ publications {
+ maven(MavenPublication) {
+ from components.java
+ }
}
}
diff --git a/vtm-desktop/build.gradle b/vtm-desktop/build.gradle
index 4b330fc2..89df74ee 100644
--- a/vtm-desktop/build.gradle
+++ b/vtm-desktop/build.gradle
@@ -1,5 +1,5 @@
apply plugin: 'java-library'
-apply plugin: 'maven'
+apply plugin: 'maven-publish'
dependencies {
api project(':vtm-gdx')
@@ -7,19 +7,24 @@ dependencies {
}
sourceSets {
- main {
- java.srcDirs = ['src']
- }
+ main.java.srcDirs = ['src']
}
file('natives').eachDir() { dir ->
task("nativesJar-${dir.name}", type: Jar) {
- classifier = "natives-${dir.name}"
+ classifier "natives-${dir.name}"
from(dir.path)
}
+}
- artifacts {
- archives tasks["nativesJar-${dir.name}"]
+publishing {
+ publications {
+ maven(MavenPublication) {
+ from components.java
+ file('natives').eachDir() { dir ->
+ artifact tasks["nativesJar-${dir.name}"]
+ }
+ }
}
}
diff --git a/vtm-extras/build.gradle b/vtm-extras/build.gradle
index 123d52e2..e91b4772 100644
--- a/vtm-extras/build.gradle
+++ b/vtm-extras/build.gradle
@@ -1,5 +1,5 @@
apply plugin: 'java-library'
-apply plugin: 'maven'
+apply plugin: 'maven-publish'
dependencies {
api project(':vtm')
@@ -13,6 +13,14 @@ sourceSets {
main.java.srcDirs = ['src']
}
+publishing {
+ publications {
+ maven(MavenPublication) {
+ from components.java
+ }
+ }
+}
+
if (project.hasProperty("SONATYPE_USERNAME")) {
afterEvaluate {
project.apply from: "${rootProject.projectDir}/deploy.gradle"
diff --git a/vtm-gdx-poi3d/build.gradle b/vtm-gdx-poi3d/build.gradle
index 26cc8124..cf722c4a 100644
--- a/vtm-gdx-poi3d/build.gradle
+++ b/vtm-gdx-poi3d/build.gradle
@@ -1,5 +1,5 @@
apply plugin: 'java-library'
-apply plugin: 'maven'
+apply plugin: 'maven-publish'
dependencies {
api project(':vtm-gdx')
@@ -10,6 +10,14 @@ sourceSets {
main.java.srcDirs = ['src']
}
+publishing {
+ publications {
+ maven(MavenPublication) {
+ from components.java
+ }
+ }
+}
+
if (project.hasProperty("SONATYPE_USERNAME")) {
afterEvaluate {
project.apply from: "${rootProject.projectDir}/deploy.gradle"
diff --git a/vtm-gdx/build.gradle b/vtm-gdx/build.gradle
index 2b7187d7..e19b5fb0 100644
--- a/vtm-gdx/build.gradle
+++ b/vtm-gdx/build.gradle
@@ -1,5 +1,5 @@
apply plugin: 'java-library'
-apply plugin: 'maven'
+apply plugin: 'maven-publish'
dependencies {
api project(':vtm')
@@ -12,8 +12,19 @@ sourceSets {
main.resources.srcDirs = ['src']
}
+publishing {
+ publications {
+ maven(MavenPublication) {
+ from components.java
+ }
+ }
+}
+
if (project.hasProperty("SONATYPE_USERNAME")) {
afterEvaluate {
project.apply from: "${rootProject.projectDir}/deploy.gradle"
+ tasks.named("sourcesJar") {
+ duplicatesStrategy DuplicatesStrategy.INCLUDE
+ }
}
}
diff --git a/vtm-http/build.gradle b/vtm-http/build.gradle
index 02914694..fece421e 100644
--- a/vtm-http/build.gradle
+++ b/vtm-http/build.gradle
@@ -1,5 +1,5 @@
apply plugin: 'java-library'
-apply plugin: 'maven'
+apply plugin: 'maven-publish'
dependencies {
api project(':vtm')
@@ -11,6 +11,14 @@ sourceSets {
main.java.srcDirs = ['src']
}
+publishing {
+ publications {
+ maven(MavenPublication) {
+ from components.java
+ }
+ }
+}
+
if (project.hasProperty("SONATYPE_USERNAME")) {
afterEvaluate {
project.apply from: "${rootProject.projectDir}/deploy.gradle"
diff --git a/vtm-ios/build.gradle b/vtm-ios/build.gradle
index 2226eb2a..8dde6868 100644
--- a/vtm-ios/build.gradle
+++ b/vtm-ios/build.gradle
@@ -8,7 +8,7 @@ buildscript {
}
apply plugin: 'java-library'
-apply plugin: 'maven'
+apply plugin: 'maven-publish'
apply plugin: 'robovm'
sourceSets.main.java.srcDirs = ["src/"]
@@ -42,7 +42,6 @@ task copyVtmThemesResources(type: Copy) {
into("${buildDir}")
}
-
tasks.withType(JavaCompile) {
compileTask -> compileTask.dependsOn copyVtmResources
}
@@ -52,7 +51,8 @@ tasks.withType(JavaCompile) {
}
task nativesJar(type: Jar) {
- classifier = 'natives'
+ dependsOn copyVtmResources, copyVtmThemesResources
+ classifier 'natives'
from('natives')
}
@@ -60,8 +60,20 @@ artifacts {
archives nativesJar
}
+publishing {
+ publications {
+ maven(MavenPublication) {
+ from components.java
+ artifact nativesJar
+ }
+ }
+}
+
if (project.hasProperty("SONATYPE_USERNAME")) {
afterEvaluate {
project.apply from: "${rootProject.projectDir}/deploy.gradle"
+ tasks.named("sourcesJar") {
+ dependsOn copyVtmResources, copyVtmThemesResources
+ }
}
}
diff --git a/vtm-jeo/build.gradle b/vtm-jeo/build.gradle
index 827ded29..97f8be44 100644
--- a/vtm-jeo/build.gradle
+++ b/vtm-jeo/build.gradle
@@ -1,5 +1,5 @@
apply plugin: 'java-library'
-apply plugin: 'maven'
+apply plugin: 'maven-publish'
dependencies {
api project(':vtm')
@@ -12,6 +12,14 @@ sourceSets {
main.java.srcDirs = ['src']
}
+publishing {
+ publications {
+ maven(MavenPublication) {
+ from components.java
+ }
+ }
+}
+
if (project.hasProperty("SONATYPE_USERNAME")) {
afterEvaluate {
project.apply from: "${rootProject.projectDir}/deploy.gradle"
diff --git a/vtm-json/build.gradle b/vtm-json/build.gradle
index 57fc0586..e8402ad2 100644
--- a/vtm-json/build.gradle
+++ b/vtm-json/build.gradle
@@ -1,5 +1,5 @@
apply plugin: 'java-library'
-apply plugin: 'maven'
+apply plugin: 'maven-publish'
dependencies {
api project(':vtm')
@@ -10,6 +10,14 @@ sourceSets {
main.java.srcDirs = ['src']
}
+publishing {
+ publications {
+ maven(MavenPublication) {
+ from components.java
+ }
+ }
+}
+
if (project.hasProperty("SONATYPE_USERNAME")) {
afterEvaluate {
project.apply from: "${rootProject.projectDir}/deploy.gradle"
diff --git a/vtm-jts/build.gradle b/vtm-jts/build.gradle
index 61b4ae7b..b49eb09f 100644
--- a/vtm-jts/build.gradle
+++ b/vtm-jts/build.gradle
@@ -1,5 +1,5 @@
apply plugin: 'java-library'
-apply plugin: 'maven'
+apply plugin: 'maven-publish'
dependencies {
api project(':vtm')
@@ -11,6 +11,14 @@ sourceSets {
main.java.srcDirs = ['src']
}
+publishing {
+ publications {
+ maven(MavenPublication) {
+ from components.java
+ }
+ }
+}
+
if (project.hasProperty("SONATYPE_USERNAME")) {
afterEvaluate {
project.apply from: "${rootProject.projectDir}/deploy.gradle"
diff --git a/vtm-models/build.gradle b/vtm-models/build.gradle
index 7cb5c61f..426f050c 100644
--- a/vtm-models/build.gradle
+++ b/vtm-models/build.gradle
@@ -1,5 +1,5 @@
apply plugin: 'java-library'
-apply plugin: 'maven'
+apply plugin: 'maven-publish'
dependencies {
api project(':vtm')
@@ -10,6 +10,14 @@ sourceSets {
main.resources.srcDirs = ['resources']
}
+publishing {
+ publications {
+ maven(MavenPublication) {
+ from components.java
+ }
+ }
+}
+
if (project.hasProperty("SONATYPE_USERNAME")) {
afterEvaluate {
project.apply from: "${rootProject.projectDir}/deploy.gradle"
diff --git a/vtm-mvt/build.gradle b/vtm-mvt/build.gradle
index b3c7d9f8..672bab9a 100644
--- a/vtm-mvt/build.gradle
+++ b/vtm-mvt/build.gradle
@@ -1,5 +1,5 @@
apply plugin: 'java-library'
-apply plugin: 'maven'
+apply plugin: 'maven-publish'
dependencies {
api project(':vtm')
@@ -10,6 +10,14 @@ sourceSets {
main.java.srcDirs = ['src']
}
+publishing {
+ publications {
+ maven(MavenPublication) {
+ from components.java
+ }
+ }
+}
+
if (project.hasProperty("SONATYPE_USERNAME")) {
afterEvaluate {
project.apply from: "${rootProject.projectDir}/deploy.gradle"
diff --git a/vtm-playground/build.gradle b/vtm-playground/build.gradle
index 22955daf..8ec0b2b2 100644
--- a/vtm-playground/build.gradle
+++ b/vtm-playground/build.gradle
@@ -18,10 +18,8 @@ dependencies {
}
sourceSets {
- main {
- java.srcDirs = ['src']
- resources.srcDirs = ['resources']
- }
+ main.java.srcDirs = ['src']
+ main.resources.srcDirs = ['resources']
}
mainClassName = "org.oscim.test.MapsforgeTest"
@@ -31,8 +29,8 @@ run {
}
}
-task fatJar(type: Jar, dependsOn: classes) {
- classifier = 'jar-with-dependencies'
+task fatJar(type: Jar, dependsOn: configurations.runtimeClasspath) {
+ classifier 'jar-with-dependencies'
from { configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) } }
exclude 'META-INF/*.DSA', 'META-INF/*.RSA', 'META-INF/*.SF'
manifest {
diff --git a/vtm-theme-comparator/build.gradle b/vtm-theme-comparator/build.gradle
index 757dee9c..ca628fae 100644
--- a/vtm-theme-comparator/build.gradle
+++ b/vtm-theme-comparator/build.gradle
@@ -19,16 +19,14 @@ dependencies {
}
sourceSets {
- main {
- java.srcDirs = ['src']
- resources.srcDirs = ['resources']
- }
+ main.java.srcDirs = ['src']
+ main.resources.srcDirs = ['resources']
}
mainClassName = "org.oscim.theme.comparator.Main"
-task fatJar(type: Jar, dependsOn: classes) {
- classifier = 'jar-with-dependencies'
+task fatJar(type: Jar, dependsOn: configurations.runtimeClasspath) {
+ classifier 'jar-with-dependencies'
from { configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) } }
exclude 'META-INF/*.DSA', 'META-INF/*.RSA', 'META-INF/*.SF'
manifest {
diff --git a/vtm-themes/build.gradle b/vtm-themes/build.gradle
index 7cb5c61f..426f050c 100644
--- a/vtm-themes/build.gradle
+++ b/vtm-themes/build.gradle
@@ -1,5 +1,5 @@
apply plugin: 'java-library'
-apply plugin: 'maven'
+apply plugin: 'maven-publish'
dependencies {
api project(':vtm')
@@ -10,6 +10,14 @@ sourceSets {
main.resources.srcDirs = ['resources']
}
+publishing {
+ publications {
+ maven(MavenPublication) {
+ from components.java
+ }
+ }
+}
+
if (project.hasProperty("SONATYPE_USERNAME")) {
afterEvaluate {
project.apply from: "${rootProject.projectDir}/deploy.gradle"
diff --git a/vtm-web-app/build.gradle b/vtm-web-app/build.gradle
index 9bbda902..f7fbdbfb 100644
--- a/vtm-web-app/build.gradle
+++ b/vtm-web-app/build.gradle
@@ -4,8 +4,8 @@ buildscript {
maven { url "https://plugins.gradle.org/m2/" }
}
dependencies {
- classpath 'org.wisepersist:gwt-gradle-plugin:1.0.13'
- classpath 'gradle.plugin.org.gretty:gretty:3.0.3'
+ classpath 'org.wisepersist:gwt-gradle-plugin:1.1.15'
+ classpath 'org.gretty:gretty:4.0.0'
}
}
diff --git a/vtm-web-js/build.gradle b/vtm-web-js/build.gradle
index b4e99637..677d97b7 100644
--- a/vtm-web-js/build.gradle
+++ b/vtm-web-js/build.gradle
@@ -4,8 +4,8 @@ buildscript {
maven { url "https://plugins.gradle.org/m2/" }
}
dependencies {
- classpath 'org.wisepersist:gwt-gradle-plugin:1.0.13'
- classpath 'gradle.plugin.org.gretty:gretty:3.0.3'
+ classpath 'org.wisepersist:gwt-gradle-plugin:1.1.15'
+ classpath 'org.gretty:gretty:4.0.0'
}
}
diff --git a/vtm-web/build.gradle b/vtm-web/build.gradle
index 7a016ea7..70b0e8eb 100644
--- a/vtm-web/build.gradle
+++ b/vtm-web/build.gradle
@@ -3,12 +3,12 @@ buildscript {
mavenCentral()
}
dependencies {
- classpath 'org.wisepersist:gwt-gradle-plugin:1.0.13'
+ classpath 'org.wisepersist:gwt-gradle-plugin:1.1.15'
}
}
apply plugin: 'java-library'
-apply plugin: 'maven'
+apply plugin: 'maven-publish'
apply plugin: 'gwt-base'
sourceSets {
@@ -81,6 +81,14 @@ javadoc {
options.addStringOption("sourcepath", "")
}
+publishing {
+ publications {
+ maven(MavenPublication) {
+ from components.java
+ }
+ }
+}
+
if (project.hasProperty("SONATYPE_USERNAME")) {
afterEvaluate {
project.apply from: "${rootProject.projectDir}/deploy.gradle"
diff --git a/vtm/build.gradle b/vtm/build.gradle
index 25372d7e..17ff45dd 100644
--- a/vtm/build.gradle
+++ b/vtm/build.gradle
@@ -1,5 +1,5 @@
apply plugin: 'java-library'
-apply plugin: 'maven'
+apply plugin: 'maven-publish'
dependencies {
api 'net.sf.kxml:kxml2:2.3.0'
@@ -12,6 +12,14 @@ sourceSets {
main.resources.srcDirs = ['resources']
}
+publishing {
+ publications {
+ maven(MavenPublication) {
+ from components.java
+ }
+ }
+}
+
if (project.hasProperty("SONATYPE_USERNAME")) {
afterEvaluate {
project.apply from: "${rootProject.projectDir}/deploy.gradle"