Добавить и вызвать метод в главном классе Java приложения

Появилась необходимость добавления кода из одного java приложения в другое (находятся в одной папке).

Пример результата: Во втором приложении должен появится метод:

public void test(){
...
}

И вызываться он должен из главного класса.

В интернете нашел рабочий код но не могу с ним разобраться. (ссылки в коде устарели)

RandomAccessFile randomAccessFile = new RandomAccessFile(file, "r");
            randomAccessFile.seek(n);
            byte[] input = new byte[n2];
            randomAccessFile.read(input, 0, n2);
            randomAccessFile.close();
            Inflater inflater = new Inflater();
            inflater.setInput(input);
            ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(n2);
            byte[] array2 = new byte[1024];
            while (!inflater.finished()) {
                byteArrayOutputStream.write(array2, 0, inflater.inflate(array2));
            }
            byteArrayOutputStream.close();
            byte[] byteArray = byteArrayOutputStream.toByteArray();
            inflater.end();
            URLClassLoader urlClassLoader = new URLClassLoader(new URL[] { new URL("http://central.maven.org/maven2/org/ow2/asm/asm/5.0.3/asm-5.0.3.jar"), new URL("http://central.maven.org/maven2/org/ow2/asm/asm-tree/5.0.3/asm-tree-5.0.3.jar") }, Thread.currentThread().getContextClassLoader());
            Method declaredMethod = ClassLoader.class.getDeclaredMethod("defineClass", String.class, byte[].class, Integer.TYPE, Integer.TYPE);
            declaredMethod.setAccessible(true);
            ((Class<?>)declaredMethod.invoke(urlClassLoader, null, byteArray, 0, byteArray.length)).newInstance();

Ответы (1 шт):

Автор решения: Arty Morris

В settings.gradle пишите название второго проекта

include ':app', ':usbserial'

В build.gradle пишите второй проект

implementation project(':usbserial')

Синхронизируете gradle. Теперь можете использовать методы второго приложения в основном

→ Ссылка