загрузить внешнюю банку в путь к классу для проекта Java

У меня есть папка lib в местоположении установщика, которую я хочу загрузить по пути к классу или обновить во время выполнения для моего java-проекта программно.

Я пытался установить путь к классам с помощью -cp и использовал ClassLoader, URLClassLoader, но это не сработало. нашел ClassNotFoundException. Я также попробовал статический блок для загрузки моей банки.

Как решить эту проблему, как мы можем динамически ссылаться на внешнюю папку jar или можем загрузить ее по пути к классу.

Я использую Eclipse IDE, у которого есть опция в пути сборки для загрузки внешней папки, но я не уверен, что это сработает, когда я экспортирую проект, поскольку он создает путь только для моей текущей рабочей области, поэтому он не будет работать, когда установщик переходит на другую машину . Поэтому мне нужно было загрузить эту папку программно.


person RTA    schedule 15.01.2014    source источник
comment
кажется, вы готовы начать использовать maven...   -  person Guy Gavriely    schedule 15.01.2014
comment
@ Парень, но в настоящее время я не использую maven, могу ли я найти решение для этого без maven.   -  person RTA    schedule 15.01.2014


Ответы (2)


вы можете использовать переменную environmental для загрузки класса или jar.

person XXX    schedule 15.01.2014

Пожалуйста, взгляните на эти вопросы в stackoverflow. они могут вам помочь. Я лично не пробовал и никогда не сталкивался с таким требованием.

Как мне динамически загружать JAR-файлы во время выполнения?

Загрузка jar во время выполнения

Надеюсь, приведенные выше ссылки помогут вам решить вашу проблему.

person Srikanth Ganji    schedule 15.01.2014
comment
не работает, сначала мне нужно устранить ошибку времени компиляции, которую я устранил с помощью пути сборки-> добавить внешнюю папку. Теперь я использовал classLoader и отражение для загрузки во время выполнения во время вызова приложения. Я сомневаюсь, что оба создают конфликт, и jar, разрешенный во время компиляции, обязательно что-то сделает при загрузке загрузчиком классов во время выполнения. - person RTA; 15.01.2014