osmdroid/osmdroid-server-jdk
spyhunter99 0b84050b5f
Feature/#1776 build tech upgrades/build process improvements (#1793)
* Update gradle wrapper to 6.8.3

* Remove incompatible build instructions

* Replace deprecated findbugs with spotbugs

* Remove jDepend, there is no close approximation replacement

* Update left shift to be doLast

* Add compileSdkVersion to projects

* Update travis configuration to support more recent build tools

* #1776 made some progress with the build tech update
- dist zip is not hooked up
- maven central publishing definitely needs to be redone, from scratch
- mil-sym-android was on bintray but that is dead now, so if you attempt to build this branch, you'll check to check out and build that repo

* #1776 javadocs are now generated from the aar (although a bit of a hack)

* #1776 moves apk signing config to a new file
updates 2525 renderer to a version that is on central

* #1776 first successful test publish of snapshots and a release run (FOR AAR's ONLY)
caveats, dependency declarations in the poms are done by parsing build.gradle files which is super risky considering the massive variations for writing them. exclusions aren't applied yet

* #1776 all jar, war components are now published. Found a number of security issues identifed by sonatype lift when publishing thus the many dependency updates. At this point, i think it's good enough for PR and hopefully for some assistance to resolving the on device unit testing stuff that's broken and the one or two unit tests that stopped working and is now commented out. Wiki release procedure document needs to be updated as well

* #1776 reverting previous disabled functions that failed for unknown reasons during the upgrades. seems to work ok now though

* #1776 removing the old projects from version control, they have been incompatible for nearly 4 years now

* #1776 no longer needed since we no longer have any closed source libraries

* #1776 removing the quality plugin, none of the operations in there still work with the newer android stuff
adding in  @hannesa2's github action scripts to ci osmdroid again

* #1776 no longer needed submodule reference, updating ci build

* #1776 borrowing more from fury, should resolve ci issues

* #1776 borrowing more from fury, should resolve ci issues

* #1776 borrowing more from fury, should resolve ci issues, got it this time

* #1776 removing the checkstyle, qualty plugin was removed

Co-authored-by: Al Sutton <al.sutton@alsutton.com>
2022-05-05 18:52:28 -04:00
..
src/main Feature/#1776 build tech upgrades/build process improvements (#1793) 2022-05-05 18:52:28 -04:00
www #255 gradle enabling the simple tile server. this build will fail due to gradle-fury issue 46. merging will have to wait 2016-12-24 09:48:29 -05:00
build.gradle Feature/#1776 build tech upgrades/build process improvements (#1793) 2022-05-05 18:52:28 -04:00
LICENSE-OpenLayers #255 adding JRE based map server 2016-01-29 19:39:04 -05:00
README.md #255 gradle enabling the simple tile server. this build will fail due to gradle-fury issue 46. merging will have to wait 2016-12-24 09:48:29 -05:00
sources.properties #255 adding JRE based map server 2016-01-29 19:39:04 -05:00
usgstopo-grandcanyon.sqlite #255 adding JRE based map server 2016-01-29 19:39:04 -05:00

OpenStreetMapsTileServer

A simple Java server that serves up OSM Sqlite database files. This tool will serve up map tiles stored in a osmdroid sqlite database created by MOBAC.

Usage Scenario

This tool is not designed for a high volume, production scale systems. It's most appropriate for testing, development and disconnected (from the internet) environments where you needed to serve up map tiles quickly and don't want to generate tiles using the Open Street Map database and associated tooling. This tool is not meant to be internet facing.

Why?

Primarily for those want to test osmdroid on a network that can't reach the internet.

Usage

Preparing your tile databases

Fire up MOBAC and create an OsmDroid sqlite database. Use 256x256pixel tiles.

Build

git clone https://github.com/osmdroid/osmdroid.git`

gradlew install

configure

vi sources.properties

Add in whatever OsmDroid style Sqlite database files that you have using the example. A very small example database using the USGS Topographic maps is provided.

Start it up

java -jar target/osmdroid-server-jdk-<version>-jar-with-dependencies.jar (optional port, default 80)

../gradlew run <port>

Point browser to: http://localhost:port/, tile sources can be changed using the drop down menu.

Web server deployment

The tile server is also packaged as a WAR file. I haven't tested it, so I probably won't work.

Contributing

Pull requests are encouraged and accepted

Road Map

  • flexible plugin system to enable server tiles from virtually any sqlite based table schema
  • support other database servers (via JDBC connections)

Example map data set

The example map source was produced using MOBAC using the USGS Topographic map source. It's considered public domain, but they asked for the following.

"Map services and data available from U.S. Geological Survey, National Geospatial Program." Please go to http://www.usgs.gov/visual-id/credit_usgs.html for further information and details regarding the USGS Visual Identity System.

License

This bit of code: Apache Software Foundation 2.0

OpenLayers: BSD 2 Clause

Apache libraries Apache 2.0 License