Я перемещаю базу данных с 11G на 12C. Приложение в настоящее время работает на java5 и использует ojdbc14.jar. Когда я перехожу на ojdbc6.jar, я получаю
java.lang.IllegalAccessError: tried to access class oracle.jdbc.driver.OracleResultSet
. После открытия обоих jar-файлов и сравнения я вижу, что модификатор доступа в OracleResultSet больше не доступенв ojdbc6.jar
Вопрос : есть ли способ переопределить импорт в классе во время выполнения через параметр java вместо изменения в классе и перекомпиляции кода. Проблема в том, что у меня больше нет исходного кода, поэтому я ищу способ перезаписать импорт, сделанный в определенном классе.
Я понимаю, где или что вызывает ошибку, нужно знать, есть ли способперезаписать импорт во время выполнения.
import oracle.jdbc.driver.OracleResultSet;
import java.sql.ResultSet;
import java.sql.Clob;
import java.sql.PreparedStatement;
.
.other imports
Я могу изменить импорт на oracle.jdbc.OracleResultSet, и он будет работать. Но мне придется внести прямое изменение в файл .class, так как исходный код нетбольше в наличии.