The project source and output is in a different directory and the only file in the Scripts folder is Sheets.jar.
This are the artifact settings:
At the bottom is also Sheets compile output.
I ran the following command to make sure the dependency it's complaining about is in the jar.
~/.jdks/adopt-openjdk-1.8.0_282/bin/jar tvf Sheets.jar | grep ServletContextCleaner
2914 Sun Feb 07 04:14:04 CET 2021 org/apache/commons/logging/impl/ServletContextCleaner.class
Next I ran the following script to launch OSBot with arguments:
#! /bin/bash
~/.jdks/adopt-openjdk-1.8.0_282/bin/java -jar "OSBot.jar" \
-autologin \
-allow reflection \
-bot xxx \
-script Sheets:null \
-debug 0 \
-proxy xxx \
-login xxx
And it spit out the following rather long error:
Setting reflection permission to allow
Starting local script with name: Sheets
Debug enabled on port 0
[DEBUG][02/11 01:57:20 AM]: Injected 2 field list filters
[DEBUG][02/11 01:57:20 AM]: Injected 2 field filters
[DEBUG][02/11 01:57:20 AM]: Injected 2 method list filters
[DEBUG][02/11 01:57:20 AM]: Injected 3 method filters
In debug mode!
OpenJDK 64-Bit Server VM warning: Using incremental CMS is deprecated and will likely be removed in a future release
Listening for transport dt_socket at address: 40509
Setup proxy authentication!
Stealth injection class-filter enabled!
Successfully loaded OSBot!
[INFO][02/11 01:57:21 AM]: Welcome to OSBot 2.6.9!
[INFO][02/11 01:57:21 AM]: Loaded 3 RS accounts!
[ERROR][02/11 01:57:21 AM]: Failed to load local script : module-info.class
java.lang.UnsupportedClassVersionError: module-info has been compiled by a more recent version of the Java Runtime (class file version 53.0), this version of the Java Runtime only recognizes class file versions up to 52.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:756)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
at org.osbot.t.IIiiIiiiiIII(yr:43)
at org.osbot.U.iIiiiiiIIIiI(wx:274)
at org.osbot.U.IiiIiiiiIiii(wx:259)
at org.osbot.Lpt2.IiiIiiiiIiii(hu:59)
at java.lang.Thread.run(Thread.java:748)
[ERROR][02/11 01:57:22 AM]: Failed to load local script : org/apache/commons/logging/impl/ServletContextCleaner.class
java.lang.NoClassDefFoundError: javax/servlet/ServletContextListener
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:756)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
at org.osbot.t.IIiiIiiiiIII(yr:43)
at org.osbot.U.iIiiiiiIIIiI(wx:274)
at org.osbot.U.IiiIiiiiIiii(wx:259)
at org.osbot.Lpt2.IiiIiiiiIiii(hu:59)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.ClassNotFoundException: javax.servlet.ServletContextListener
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
... 16 more
[INFO][02/11 01:57:23 AM]: Script list refreshed and loaded 9 scripts.
[INFO][02/11 01:57:23 AM]: Updated injection hooks for client revision : 193!
[DEBUG][Bot #1][02/11 01:57:23 AM]: Initializing stealth injection bot...
[INFO][Bot #1][02/11 01:57:23 AM]: Downloading latest RS2 old-school client parameters...
[INFO][Bot #1][02/11 01:57:24 AM]: Downloading latest RS2 old-school client...
[DEBUG][Bot #1][02/11 01:57:26 AM]: Injected bot reference into client!
[DEBUG][Bot #1][02/11 01:57:26 AM]: Injected world accessors!
[DEBUG][Bot #1][02/11 01:57:26 AM]: Injected 38 class and 339 field accessors!
[DEBUG][Bot #1][02/11 01:57:26 AM]: Injected canvas!
[DEBUG][Bot #1][02/11 01:57:30 AM]: Loading RS world : 31
[INFO][Bot #1][02/11 01:57:30 AM]: Initializing 39 API modules...
[INFO][02/11 01:57:30 AM]: Started bot #1
Waiting for the game to load before starting script...
Starting script...
[ERROR][02/11 01:57:30 AM]: Failed to load local script : module-info.class
java.lang.UnsupportedClassVersionError: module-info has been compiled by a more recent version of the Java Runtime (class file version 53.0), this version of the Java Runtime only recognizes class file versions up to 52.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:756)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
at org.osbot.t.IIiiIiiiiIII(yr:43)
at org.osbot.U.iIiiiiiIIIiI(wx:274)
at org.osbot.U.IiiIiiiiIiii(wx:259)
at org.osbot.BotApplication.main(op:266)
[ERROR][02/11 01:57:31 AM]: Failed to load local script : org/apache/commons/logging/impl/ServletContextCleaner.class
java.lang.NoClassDefFoundError: javax/servlet/ServletContextListener
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:756)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
at org.osbot.t.IIiiIiiiiIII(yr:43)
at org.osbot.U.iIiiiiiIIIiI(wx:274)
at org.osbot.U.IiiIiiiiIiii(wx:259)
at org.osbot.BotApplication.main(op:266)
Caused by: java.lang.ClassNotFoundException: javax.servlet.ServletContextListener
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
... 15 more
Could not find script : Sheets
Regarding this line:
[ERROR][02/11 01:57:22 AM]: Failed to load local script : org/apache/commons/logging/impl/ServletContextCleaner.class
using the jar command above I have confirmed the file is in fact inside the jar.
And regarding these lines:
[ERROR][02/11 01:57:21 AM]: Failed to load local script : module-info.class
java.lang.UnsupportedClassVersionError: module-info has been compiled by a more recent version of the Java Runtime (class file version 53.0), this version of the Java Runtime only recognizes class file versions up to 52.0
I have no idea why it complains about this because all my IntelliJ settings are set to java 1.8 and the libraries are also confirmed to be working in java 8.
Any further help would be greatly appreciated.