migrate to gradle part 2

This commit is contained in:
afischerdev 2021-06-29 13:02:21 +02:00
parent d0f3644b1f
commit 47f1b10b99
15 changed files with 96 additions and 30 deletions

View file

@ -46,21 +46,27 @@ A full documentation on how to set this up is available at
### Build and Install ### Build and Install
To compile BRouter (including the BRouter Android app), use To compile BRouter (including the BRouter Android app), add a file
local.properties to main folder with your Android path
``` ```
mvn clean install -Dandroid.sdk.path=<your-sdk-path> sdk.dir=D\:\\Android\\android-sdk
```
and use
```
gradlew clean build
``` ```
If you only want to compile BRouter and the server part (skipping the Android If you only want to compile BRouter and the server part (skipping the Android
app), use app), use
``` ```
mvn clean install -pl '!brouter-routing-app' gradlew clean build -x :brouter-routing-app:build
``` ```
You can use `-Dmaven.javadoc.skip=true` to skip the JavaDoc processing and
`-DskipTests` to skip running the unitary tests.
### Get the required segments (data) files ### Get the required segments (data) files

View file

@ -4,4 +4,5 @@ plugins {
dependencies { dependencies {
implementation project(':brouter-util') implementation project(':brouter-util')
testImplementation 'junit:junit:4.13.1'
} }

View file

@ -8,5 +8,6 @@ dependencies {
implementation project(':brouter-util') implementation project(':brouter-util')
implementation project(':brouter-expressions') implementation project(':brouter-expressions')
implementation project(':brouter-codec') implementation project(':brouter-codec')
testImplementation 'junit:junit:4.13.1'
} }

View file

@ -5,4 +5,5 @@ plugins {
dependencies { dependencies {
implementation project(':brouter-util') implementation project(':brouter-util')
implementation project(':brouter-codec') implementation project(':brouter-codec')
testImplementation 'junit:junit:4.13.1'
} }

View file

@ -14,7 +14,7 @@ public class EncodeDecodeTest
{ {
URL testpurl = this.getClass().getResource( "/dummy.txt" ); URL testpurl = this.getClass().getResource( "/dummy.txt" );
File workingDir = new File(testpurl.getFile()).getParentFile(); File workingDir = new File(testpurl.getFile()).getParentFile();
File profileDir = new File( workingDir, "/../../../misc/profiles2" ); File profileDir = new File( workingDir, "/../../../../misc/profiles2" );
File lookupFile = new File( profileDir, "lookups.dat" ); File lookupFile = new File( profileDir, "lookups.dat" );
// read lookup.dat + trekking.brf // read lookup.dat + trekking.brf

View file

@ -2,15 +2,25 @@ plugins {
id 'application' id 'application'
} }
version = '1.6.1'
application { application {
// Gradles 'application' plugin requires one main class; since we have multiple ones, just specify // Gradles 'application' plugin requires one main class; since we have multiple ones, just specify
// one of them, since the applications won't be run from gradle anyways. // one of them, since the applications won't be run from gradle anyways.
mainClassName = 'btools.mapcreator.PosUnifier' mainClass.set('btools.mapcreator.PosUnifier')
jar {
manifest {
attributes "Main-Class": getMainClass()
}
}
} }
dependencies { dependencies {
implementation project(':brouter-util')
implementation project(':brouter-codec') implementation project(':brouter-codec')
implementation project(':brouter-util')
implementation project(':brouter-expressions') implementation project(':brouter-expressions')
implementation('junit:junit:4.13')
testImplementation('junit:junit:4.13.1')
} }

View file

@ -17,7 +17,7 @@ public class MapcreatorTest
Assert.assertTrue( "test-osm-map dreieich.osm not found", mapurl != null ); Assert.assertTrue( "test-osm-map dreieich.osm not found", mapurl != null );
File mapFile = new File(mapurl.getFile()); File mapFile = new File(mapurl.getFile());
File workingDir = mapFile.getParentFile(); File workingDir = mapFile.getParentFile();
File profileDir = new File( workingDir, "/../../../misc/profiles2" ); File profileDir = new File( workingDir, "/../../../../misc/profiles2" );
File tmpdir = new File( workingDir, "tmp" ); File tmpdir = new File( workingDir, "tmp" );
tmpdir.mkdir(); tmpdir.mkdir();

View file

@ -3,7 +3,6 @@ plugins {
} }
dependencies { dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation project(':brouter-util') implementation project(':brouter-util')
implementation project(':brouter-codec') implementation project(':brouter-codec')
implementation project(':brouter-expressions') implementation project(':brouter-expressions')

View file

@ -3,32 +3,78 @@ plugins {
} }
android { android {
compileSdkVersion 29 compileSdkVersion 30
defaultConfig { defaultConfig {
applicationId "btools.routingapp" applicationId "btools.routingapp"
minSdkVersion 10 minSdkVersion 19
targetSdkVersion 29 targetSdkVersion 30
versionCode 41 versionCode 41
versionName "1.6.1" versionName "1.6.1"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" setProperty("archivesBaseName","BRouterApp." + defaultConfig.versionName)
//testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
if(project.hasProperty("RELEASE_STORE_FILE")) {
signingConfigs {
// this uses a file ~/.gradle/gradle.properties
// with content:
// RELEASE_STORE_FILE={path to your keystore}
// RELEASE_STORE_PASSWORD=*****
// RELEASE_KEY_ALIAS=*****
// RELEASE_KEY_PASSWORD=*****
//
release {
// enable signingConfig in buildTypes to get a signed apk file
storeFile file(RELEASE_STORE_FILE)
storePassword RELEASE_STORE_PASSWORD
keyAlias RELEASE_KEY_ALIAS
keyPassword RELEASE_KEY_PASSWORD
// Optional, specify signing versions used
v1SigningEnabled true
v2SigningEnabled true
}
}
} }
buildTypes { buildTypes {
release { release {
minifyEnabled false minifyEnabled false
debuggable false
if(project.hasProperty("RELEASE_STORE_FILE")) {
signingConfig signingConfigs.release
}
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
} }
debug {
minifyEnabled false
debuggable true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
lintOptions {
disable 'InvalidPackage'
checkReleaseBuilds false //added this line to the build.gradle under the /android/app/build.gradle
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
} }
} }
dependencies { dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.appcompat:appcompat:1.3.0'
implementation project(':brouter-mapaccess') implementation project(':brouter-mapaccess')
implementation project(':brouter-core') implementation project(':brouter-core')
implementation project(':brouter-expressions') implementation project(':brouter-expressions')
implementation project(':brouter-util') implementation project(':brouter-util')
} }

View file

@ -2,19 +2,23 @@ plugins {
id 'application' id 'application'
} }
version = '1.6.1'
application { application {
mainClassName = 'btools.server.BRouter' mainClass.set('btools.server.BRouter')
jar { jar {
manifest { manifest {
attributes "Main-Class": "$mainClassName" attributes "Main-Class": getMainClass()
} }
} }
} }
dependencies { dependencies {
implementation('junit:junit:4.13') testImplementation 'junit:junit:4.13.1'
implementation project(':brouter-util') implementation project(':brouter-util')
implementation project(':brouter-core') implementation project(':brouter-core')
implementation project(':brouter-mapaccess') implementation project(':brouter-mapaccess')
} }

View file

@ -20,7 +20,7 @@ public class IntegrityCheckTest
File resultfile = new File( resulturl.getFile() ); File resultfile = new File( resulturl.getFile() );
workingDir = resultfile.getParentFile(); workingDir = resultfile.getParentFile();
File segmentDir = new File( workingDir, "/../../../brouter-map-creator/target/test-classes/tmp/segments" ); File segmentDir = new File( workingDir, "/../../../../brouter-map-creator/build/resources/test/tmp/segments" );
File[] files = segmentDir.listFiles(); File[] files = segmentDir.listFiles();
for ( File f : files ) for ( File f : files )

View file

@ -61,13 +61,13 @@ public class RouterTest
wplist.add( n ); wplist.add( n );
RoutingContext rctx = new RoutingContext(); RoutingContext rctx = new RoutingContext();
rctx.localFunction = wd + "/../../../misc/profiles2/trekking.brf"; rctx.localFunction = wd + "/../../../../misc/profiles2/trekking.brf";
// c.setAlternativeIdx( 1 ); // c.setAlternativeIdx( 1 );
RoutingEngine re = new RoutingEngine( RoutingEngine re = new RoutingEngine(
wd + "/" + trackname, wd + "/" + trackname,
wd + "/" + trackname, wd + "/" + trackname,
wd + "/../../../brouter-map-creator/target/test-classes/tmp/segments", wplist, rctx ); wd + "/../../../../brouter-map-creator/build/resources/test/tmp/segments", wplist, rctx );
re.doRun( 0 ); re.doRun( 0 );
return re.getErrorMessage(); return re.getErrorMessage();

View file

@ -3,5 +3,5 @@ plugins {
} }
dependencies { dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar']) testImplementation('junit:junit:4.13.1')
} }

View file

@ -3,12 +3,11 @@
buildscript { buildscript {
repositories { repositories {
mavenCentral()
google() google()
jcenter()
} }
dependencies { dependencies {
classpath 'com.android.tools.build:gradle:3.6.3' classpath 'com.android.tools.build:gradle:4.1.3'
// NOTE: Do not place your application dependencies here; they belong // NOTE: Do not place your application dependencies here; they belong
@ -18,9 +17,8 @@ buildscript {
allprojects { allprojects {
repositories { repositories {
mavenCentral()
google() google()
jcenter()
} }
} }

View file

@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip distributionUrl=https\://services.gradle.org/distributions/gradle-7.0-all.zip