ljo / exist-sparql

Integrates SPARQL and RDF indexing through the Jena TDB libraries into eXist-db.
GNU General Public License v3.0
18 stars 3 forks source link

Update for latest eXist-db and Jena #7

Open adamretter opened 4 years ago

adamretter commented 4 years ago

All tests now pass too ;-)

This removes the previous Ant build, as you can no longer build eXist-db with Ant.

joewiz commented 4 years ago

@adamretter Awesome! Does it require Java 8, by chance? Using OpenJDK 11 (Liberica), I got this error when building using the directions in your revised README:

javadoc: error - The code being documented uses modules but the packages defined in https://docs.oracle.com/javase/8/docs/api/ are in the unnamed module.

The full block:

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  31.600 s
[INFO] Finished at: 2020-06-24T11:19:38-04:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-javadoc-plugin:3.2.0:jar (attach-javadocs) on project exist-sparql: MavenReportException: Error while generating Javadoc: 
[ERROR] Exit code: 1 - javadoc: error - The code being documented uses modules but the packages defined in https://docs.oracle.com/javase/8/docs/api/ are in the unnamed module.
[ERROR] 
[ERROR] Command line was: /Library/Java/JavaVirtualMachines/liberica-jdk-11-full.jdk/Contents/Home/bin/javadoc @options @packages
[ERROR] 
[ERROR] Refer to the generated Javadoc files in '/Users/joe/workspace/exist-sparql/target/apidocs' dir.
adamretter commented 4 years ago

@joewiz It sounds like the javadoc in the project may not be compatible with Java 11. Some aspects of Javadoc have changed (been made stricter) with each release of Java.

I can also confirm that the javadoc is generated correctly on Java 8. I would suggest for now you build the module with Java 8, it will still run on Java 11.

I haven't modified the original Javadoc and I am afraid I don't have time to fix the Javadoc right now for Java 11. I am happy for anyone else to send a second PR which does though :-)

joewiz commented 4 years ago

@adamretter Thanks! I can confirm that the PR builds under Java 8.

wsalesky commented 4 years ago

@adamretter I just tried to build this (running: mvn clean compile package -e ) and ran into the following error:

INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  2.211 s
[INFO] Finished at: 2020-07-10T14:53:42-04:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project exist-sparql: Could not resolve dependencies for project org.exist-db.xquery.apps:exist-sparql:jar:0.1.0-SNAPSHOT: Failed to collect dependencies at org.exist-db:exist-core:jar:5.2.0 -> org.exist-db.thirdparty.com.thaiopensource:jing:jar:20151127: Failed to read artifact descriptor for org.exist-db.thirdparty.com.thaiopensource:jing:jar:20151127: Could not transfer artifact org.exist-db.thirdparty.com.thaiopensource:jing:pom:20151127 from/to exist-db (http://repo.evolvedbinary.com/repository/exist-db/): sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal on project exist-sparql: Could not resolve dependencies for project org.exist-db.xquery.apps:exist-sparql:jar:0.1.0-SNAPSHOT: Failed to collect dependencies at org.exist-db:exist-core:jar:5.2.0 -> org.exist-db.thirdparty.com.thaiopensource:jing:jar:20151127
    at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.getDependencies (LifecycleDependencyResolver.java:269)
    at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.resolveProjectDependencies (LifecycleDependencyResolver.java:147)
    at org.apache.maven.lifecycle.internal.MojoExecutor.ensureDependenciesAreResolved (MojoExecutor.java:248)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:202)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:956)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:288)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:192)
    at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:497)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)

Thoughts? I would love to use this in our upcoming re-release of the Srophe application. Thanks!

adamretter commented 4 years ago

@wsalesky you might need to add http://repo.evolvedbinary.com/repository/exist-db/ to your repositories list until 5.3.0 is updated and this is updated for that.

However I did find some problems with this... Maybe it would be good to have a watch of my recent Markup UK webinar

wsalesky commented 4 years ago

@adamretter Thanks I will take a look at the webinar.

adamretter commented 3 years ago

@ljo Will this ever be merged?