Hi Mikhail,

There wasn't an intentional change but there has been a signficant amount of change in the area.

I have a question below:


On 08/02/2025 17:39, Mikhail Komyshev wrote:
Hi!

I have an application that uses Fuseki Main server and tried updating the jena-fuseki-server-X.X.X.jar binary from 5.2.0 to 5.3.0 from [1]. But from some reason, auto modules stopped loading.

Unfortuantely, I haven't found any notices about changes in this regard. Sorry if I missed something. Did the behaviour change or is this a bug?

The minimal example is as follows (suppose compiled against org.apache.jena/jena-fuseki-main from Maven version 5.3.0):
```
package com.example;

import java.util.Set;
import org.apache.jena.rdf.model.Model;
import org.apache.jena.fuseki.main.sys.FusekiAutoModule;
import org.apache.jena.fuseki.main.FusekiServer;

public class MyModule implements FusekiAutoModule {
     public MyModule() {}

     public String name() {
         return "My Module";
     }

     public void prepare(
         FusekiServer.Builder builder,
         Set<String> datasetNames,
         Model configModel
     ) {
         System.out.println("Hello world!");
     }
}
```

Then, in the file `META-INF/services/ org.apache.jena.fuseki.main.sys.FusekiAutoModule` on the classpath, you put this line:
```
com.example.MyModule
```

When running the following shell command, you can see the info message about the module being loaded and the Hello world message in the standard output:
```
java -cp jena-fuseki-server-5.2.0.jar:src/java:resources \
   org.apache.jena.fuseki.main.cmds.FusekiMainCmd --mem --modules=true \
   '/test'
```

How is the file com/example/MyModule.class getting onto the classpath?



Yet, running the same command with the 5.3.0 binary doesn't seem to load the module and therefore doesn't produce the two messages.

Thanks in advance!

[1]: https://repo1.maven.org/maven2/org/apache/jena/jena-fuseki- server/5.3.0/jena-fuseki-server-5.3.0.jar

Cheers,
Mikhail

Reply via email to