-
Notifications
You must be signed in to change notification settings - Fork 193
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
NoClassDefFoundError and NoSuchMethodError #293
Comments
We just pushed a branch of spatial for 3.1 either you can build it locally or we'll provide a temporary jar to test here https://dl.dropboxusercontent.com/u/14493611/neo4j-spatial-0.24-neo4j-3.1.0-server-plugin.jar |
I worked on these issues together with @schrieveslaach and we found out the following: On the NoSuchMethodError
On the NoClassDefFoundError
As the three of us know, What currently bothers me is, why is the class missing in the jar? -- Note 1: I assume that |
@m007, that's correct. In fact, we added all |
on 20170812, using the latest sources (v3.1.4 I presume with a 3.1.3 server), built JARs (skipping tests, 2 are failing), I get a NoClassDefFoundError: org/geotools/filter/text/cql2/CQLException call spatial.procedures() works BTW, I get a FileNotFoundException if I use file:// protocol |
I tried to add without luck. I'm going to bed with even more impostor syndrom v14.4 is not latest but has the CQLException class |
@wadael are you familiar with FROM neo4j:3.1.1
RUN apk add --update zip unzip && rm -rf /var/cache/apk/*
RUN curl -s -L -o /var/lib/neo4j/plugins/neo4j-spatial-server-plugin.jar https://github.com/neo4j-contrib/m2/blob/master/releases/org/neo4j/neo4j-spatial/0.24-neo4j-3.1.1/neo4j-spatial-0.24-neo4j-3.1.1-server-plugin.jar?raw=true
# Patch the server-plugin.jar file with missing .class files
# The issue and patching were both documented here https://github.com/neo4j-contrib/spatial/issues/293
RUN curl -s -L -o /tmp/gt-cql.jar http://repo.boundlessgeo.com/main/org/geotools/gt-cql/14.4/gt-cql-14.4.jar && \
unzip -q /tmp/gt-cql.jar -d /tmp && \
cd /tmp && \
zip -q -ur /var/lib/neo4j/plugins/neo4j-spatial-server-plugin.jar ./org/ && \
rm -r /tmp/org /tmp/gt-cql.jar
EXPOSE 7474
CMD ["neo4j"] This completely fixes the issues for server version |
@m007 Thank you, the dockerfile put me on tracks. |
@wadael glad to be able to help. As far as why the dependencies are missing question is concerned I have no idea either. |
Here is a Dockerfile FROM neo4j:3.1.1
RUN apk add --update zip unzip && rm -rf /var/cache/apk/*
RUN curl -s -L -o /var/lib/neo4j/plugins/neo4j-spatial-server-plugin.jar https://github.com/neo4j-contrib/spatial/files/1227950/neo4j-spatial-0.24-neo4j-3.1.4-server-plugin.zip
EXPOSE 7474
CMD ["neo4j"] |
After executing CALL spatial.importOSM('/mnt/map.osm'); for a manually added FROM neo4j:3.1.4 matching the server version name in the |
This issue due to the OSMLayer extending DynamicLayer which depended on CQL for specifying virtual layers. While OSMLayer itself does not need the CQL capability, this dependency caused the problem. I've added gt-cql to the server-plugin jar now, and released 0.24.1 with this change. See https://github.com/neo4j-contrib/spatial/releases/tag/0.24.1-neo4j-3.1.1 |
As recommended at neo4j-contrib/spatial#293
I'm currently running the official Neo4j
3.1.0
from dockerhub.com as base for a docker image where I use the latest version of this repository to build the*server-plugin.jar
to the plugins directory.Running the new importOSM procedure
results in
And just plainly
results in
Can anybody reproduce this issue?
Note: this may be related to #290.
The text was updated successfully, but these errors were encountered: