Plugin integration doesn't work with Graphwalker Studio
sonfeldalmos opened this issue · comments
According to the documentation the following command works with the cli integration:
java -cp "./graphwalker-cli-4.3.1.jar;./java-plugin-generator-4.3.0.jar;" org.graphwalker.cli.CLI offline -g <My.json>
The documentation suggest that the integration should also work with the Studio as well, so I tried the following command:
java -cp "./graphwalker-studio-4.3.1.jar;./java-plugin-generator-4.3.0.jar;" org.graphwalker.studio.Application offline -g <My.json>
I experience the following error message:
Error: Could not find or load main class org.graphwalker.studio.Application
Caused by: java.lang.ClassNotFoundException: org.graphwalker.studio.Application
Update:
We tried to use our plugin with :
java -jar graphwalker-studio-4.3.1.jar -cp "java-plugin-generator-4.3.1.jar;json-simple-1.1.1.jar"
With this command we could manage to start the application but when we tried to import a model which use the newly added plugin, the following message appeared:
[SocketWorker-13] o.graphwalker.websocket.WebSocketServer : JSONObject["gw3"] not found.
Very interesting.
It seems like getSubTypesOf
does not parse out the plugin, when run under studio, even if the reflections
object does have the plugin loaded.
The difference I think is that in the case of Studio, the classloader is run in a thread, where as under CLI, it's run in the main thread.
I need to investigate some more.
Or, more likely, an additional classloader in Spring Boot which causes the problem.