Я добился некоторого прогресса в том, чтобы все это заработало, поэтому я решил добавить сюда несколько заметок на случай, если они кому-нибудь помогут. Я все еще хотел бы услышать от других об их опыте, пытающемся собрать что-то подобное.
Оказывается, что в Eclipse начиная с 3.5 есть опция экспорта проекта для Java -> Runnable JAR File. Если вы используете эту опцию, вы можете указать на основной класс Java в мастере экспорта. У вас также есть возможность переупаковать все файлы JAR, от которых вы зависите, в своем новом файле JAR. Обязательно установите флажок, чтобы сохранить экспорт как сборку ANT, чтобы можно было быстро повторить процесс. Обратите внимание, что в первый раз, когда вы делаете это через интерфейс, может произойти сбой, но он все равно будет создавать файл JAR.
Теперь вот где это становится странным. Чтобы отследить все зависимости, я все еще использую в своем проекте в основном неполную сборку Maven. Я создаю Maven .POM файл. И я рассказал Maven, какова моя внешняя зависимость JAR. Затем я сказал Maven сделать обновление зависимостей для меня. Как и ожидалось, в мой Maven-репозиторий все потянуло.
Теперь, когда я делаю сборку ANT, кажется, что он получает свой список JAR для включения в окончательную сборку от Maven. Я не совсем уверен, должно ли это работать таким образом. Я также не уверен на 100%, что это работает. Думаю, я узнаю, когда мне нужно будет добавить еще один JAR-файл в проект.
В любом случае, если вы будете следовать этому вопросу , вы увидите, что вы можете взять последние сборки Jython и извлечь файл org.python.util.JarRunner.java и использовать его в своем собственном проекте. , Это ваш класс Java.main, на который вам нужно будет указать сборку ANT. Оттуда конвертируйте ваш основной скрипт Python / Jython в скрипт run , о котором говорилось в этом вопросе.
Затем создайте еще одну копию JAR-файла Jython в своем каталоге Jython. Этот должен иметь каталог / Lib, извлеченный в JAR. Сохраните его, а затем укажите свой вариант Jave Build для Eclipse IDE для проекта PyDev на этот JAR-файл как внешнюю зависимость. Ваш JarRunner теперь будет работать и выполнять файл run .py в Jython.
Если все это работает, то вы сможете повторно запустить экспортированную сборку ANT, полученную ранее, и в итоге вы получите один файл JAR, который вы можете выполнить в командной строке как:
java -jar {yourjar} args
И распространять среди своих клиентов без каких-либо дополнительных зависимостей.
Если это все кажется немного запутанным, то это так. Если у кого-то есть лучший способ настроить все это с помощью Eclipse, пожалуйста, дайте мне знать.