I am following the guide on (graphhopper/quickstart-from-source.md at master · graphhopper/graphhopper · GitHub)
When trying to run command
java -Ddw.graphhopper.datareader.file=uzbekistan-latest.osm.pbf -jar web/target/graphhopper-web-*.jar server config-example.yml
I am encountering this error:
Error: Could not find or load main class .graphhopper.datareader.file=uzbekistan-latest.osm.pbf
Caused by: java.lang.ClassNotFoundException: /graphhopper/datareader/file=uzbekistan-latest/osm/pbf
My project structure:
Which operating system and shell do you use?
Windows 10 and powershell
Can you please try
-D"dw.graphhopper.datareader.file"=uzbekistan-latest.osm.pbf?, i.e. put the property key in
""? Or even the entire thing:
Thank you, so far so good!
Please enlighten me regarding one moment: if I run graphhopper engine with Uzbekistan data in a local server no need for apiKey and any connection to graphhoppers server, right?
I want to establish small routing service with osm data + amended my data running on Geoserver + PostGIS/Postgres. What is the correct foundation for scalable and fast routing app from your point of view?
Yes, you can run the GraphHopper server locally. Compared to the online version at Driving Directions - GraphHopper Maps it does not include geocoding (the location search in the text box on the left). You need a separate geocoding service for this. The GraphHopper server only does the routing. You either need to host your own (like Nominatim or Photon) or book a hosted one (like the one from graphhopper.com or others). Also depending on your usage you need setup another map tile server (for the visible map).
For scalable routing you don’t really need anything other than the GraphHopper server. It can serve thousands of requests per second, but you might want to enable Contraction Hierarchies for the best performance.
Thank you for thorough information. I might bother you and your colleagues from time to time with questions!