Ант-скрипт стартует приложение, с жестко забитыми входными параметрами.
Можно как-нибудь при старте передать эти параметры анту, чтобы потом их использовать при старте приложения?
Здравствуйте, Lep, Вы писали:
Lep>Ант-скрипт стартует приложение, с жестко забитыми входными параметрами. Lep>Можно как-нибудь при старте передать эти параметры анту, чтобы потом их использовать при старте приложения?
Ну, в properties поместить, а потом по ним собрать строку запуска приложения. На какой фазе затык?
Здравствуйте, Blazkowicz, Вы писали:
Lep>>Ант-скрипт стартует приложение, с жестко забитыми входными параметрами. Lep>>Можно как-нибудь при старте передать эти параметры анту, чтобы потом их использовать при старте приложения? B>Ну, в properties поместить, а потом по ним собрать строку запуска приложения. На какой фазе затык?
или сделать командный файл, который стартует ant с набором опций -D, каждая из которых приводит к подстановке параметра в запускаемый процесс
Здравствуйте, Blazkowicz, Вы писали:
B>Здравствуйте, Lep, Вы писали:
Lep>>Ант-скрипт стартует приложение, с жестко забитыми входными параметрами. Lep>>Можно как-нибудь при старте передать эти параметры анту, чтобы потом их использовать при старте приложения? B>Ну, в properties поместить, а потом по ним собрать строку запуска приложения. На какой фазе затык?
Затыка нет, я еще не пробовал Думал, может можно сам ант с этими доп параметрами вызвать.
В целом, смысл в том, что не явовское приложение будет запускать мой скрипт для доступа к веб сервису. Сервлет для этого сделать не могу, т.к. на сервере нет даже томкэта. То есть, нормально если внешнее приложение сгенерирует пропертис и запустит мое, чере ант? Или это кривая какая-то конструкция? ))
Здравствуйте, Lep, Вы писали:
Lep>То есть, нормально если внешнее приложение сгенерирует пропертис и запустит мое, чере ант? Или это кривая какая-то конструкция? ))
А зачем тут вообще ant?
Здравствуйте, Blazkowicz, Вы писали:
B>Здравствуйте, Lep, Вы писали:
Lep>>То есть, нормально если внешнее приложение сгенерирует пропертис и запустит мое, чере ант? Или это кривая какая-то конструкция? )) B>А зачем тут вообще ant?
Впринципе незачем, но не хотелось перекладывать на внешную программу всю вереницу класспаса.
Здравствуйте, Blazkowicz, Вы писали:
Lep>>То есть, нормально если внешнее приложение сгенерирует пропертис и запустит мое, чере ант? Или это кривая какая-то конструкция? )) B>А зачем тут вообще ant?
лично я, кстати, уже года 3 как использую ant для запуска приложений, очень удобно
но оговорюсь, что не в production, хотя там тоже используем максимально возможную ant-based автоматизацию, включая копирование всех нужных lib и генерацию classpath-строк в файлах, доступных старт-скрипту из /etc/init.d
Здравствуйте, Blazkowicz, Вы писали:
B>Здравствуйте, Lep, Вы писали:
Lep>>Впринципе незачем, но не хотелось перекладывать на внешную программу всю вереницу класспаса. B>В manifest.mf его.
Кстати, почему-то, указав при сборке jar'a, ну например <attribute name="Class-Path" value="C:/log4j.jar" />
jar потом наотрез отказывается запускаться, а если кинуть log4j в дирректорию с проектом и исправить value="log4j.jar", то все работает как надо.
Здравствуйте, Lep, Вы писали:
Lep>Кстати, почему-то, указав при сборке jar'a, ну например <attribute name="Class-Path" value="C:/log4j.jar" /> Lep>jar потом наотрез отказывается запускаться, а если кинуть log4j в дирректорию с проектом и исправить value="log4j.jar", то все работает как надо.
Ну, и зачем вам там абсолютный путь?
Здравствуйте, Blazkowicz, Вы писали:
C0s>>лично я, кстати, уже года 3 как использую ant для запуска приложений, очень удобно
B>Не затруднит ли поделиться примером?
если коротко, то затруднит. не то, чтобы там какой-то секрет, но просто очень большие скрипты, наработанные и разросшиеся за N лет. и выцеплять релевантную инфо долго.
если вкратце, то в скриптах сборки и так устанавливаются класс-пути для компиляции, т.е. уже нужные для компиляции зависимости мы знаем. потом пошли дальше — добавили вторые patternsets, устанавливаемые в локальном скрипте каждого проекта, которые ссылаются на добавочные либы, нужные в runtime.
общая логика реализована в одном скрипте, который импортируется во все локальные, в нём, в частности есть target запуска, который собирает финальную строку класспути и делает запуск, кастомизированный под платформу с поддержкой spawn.
не помню сейчас по какой причине, но под windows spawn делаем через запуск cmd /C start /MIN java.exe etc, а под линукс — ant-таском java fork="yes" spawn="yes"
Здравствуйте, Blazkowicz, Вы писали:
B>Здравствуйте, Lep, Вы писали:
Lep>>Кстати, почему-то, указав при сборке jar'a, ну например <attribute name="Class-Path" value="C:/log4j.jar" /> Lep>>jar потом наотрез отказывается запускаться, а если кинуть log4j в дирректорию с проектом и исправить value="log4j.jar", то все работает как надо. B>Ну, и зачем вам там абсолютный путь?
Во-первых, чтобы не захламлять каталог с проектом кучей jar'ников, а-во вторых, почему бы и не прописать там абсолютный путь )
Я ошибусь, если предположу — применение maven вместо ant сделало бы эти скрипты в несколько раз меньше? Возможно, пришлось бы свои плагины к maven дописать, конечно.
Здравствуйте, Lep, Вы писали:
Lep>Во-первых, чтобы не захламлять каталог с проектом кучей jar'ников, а-во вторых, почему бы и не прописать там абсолютный путь )
Затем что проект становится непереносимым.
Здравствуйте, Lep, Вы писали:
Lep>Во-первых, чтобы не захламлять каталог с проектом кучей jar'ников...
Конечно же лучше его захламить абсолютными путями к этим jar'никам.