ru_java, posts by tag: ant - LiveJournal (original) (raw)
Ant: Поиск классов в destdir???
Привет всем, столкнулся с такой ситуацией:
В одном древнем еклиспс-проекте есть две source папки: src_sys и src_app. В src_sys папке ведется разработка ядра. В src_app ведется разработка бизнес-логики. Бизнес-логика юзает методы из ядра.
Теперь возникла задача раздельного компилирования (для того, чтобы jar-модули передавать в другие проекты)
Пишу для этого ант-скрипт, определяю только внешние зависимости (либы) как класспас, и что замечаю: если
вызывать ант-таск компиляции вначале для бизнес-логики, а потом для ядра. То выдается сообщение об ашибке. Что объяснимо.
Но если я вначале ядро компилирую, а затем бизнес-логику. Усе в ажуре.
Важно, что классы генеряцца в одну и туже директорию.
В документации по javac и по Javac-Task Ant-a не нашел места, где было бы сказано, в чем секрет;-/
July 14th, 2010
Доброго дня.
Собираюсь использовать Ant в своих проектах, и читаю маны и Developing with Ant.
Возник такой вопрос, как вы складываете зависимости для компиляции и для выполнения?
МНе было бы удобно держать все библиотеки в структуре каталогов похожей на ту, в которой поставляются зависимости к SpringFramework:
библиотеку для log4j я бы стал держать в [project_dir]/lib/org.apache.log4j/{filename}.jar
filename = com.springsource.org.apache.log4j-1.2.15 - если бы я ее скопировал из dependencies от SpringFramework;
filename = log4j-1.2.16 - если бы я ее взял с официального сайта;
Для компиляции срабатывает конструкция:
<JAVAC
srcdir="${src}"
destdir="${build}"
includeAntRuntime="true">
Как теперь все найденные (используемые в зависимостях) jar'ы поместить в dist/lib?
Решено.
May 21st, 2010
Поделитесь опытом, кто нибудь пользовался ivy,
был ли эффект и главное, можно ли с его помощью сделать сборку по требованию, т.е.:
есть 3-ри модуля с зависимостями A->B->C
а) собирается C, B, A - каждый следующи использует сборку модулей от которых он зависит из репозитория.
б) собирается A он обнаружеивает что B нужной версии в репозитории нет,
запускает сборку B, тот делает то же самое с C в итоге все довольны.
в) то же самое что в б) но A собирается повторно и он должен переиспользовать
сборки B и C из репозитория, а не пересобирать их второй раз.
April 18th, 2010
Добрый день, уважаемые знатоки.
Уже неделю бьюсь с проблемой установки веб сервиса.
Есть веб приложение работающее на Tomcat+Apache+Struts. Возникла необходимость добавить веб сервис. Для этого использовался JAX-RPC и дальше понеслось...
На девелоперской машине все компилится, деплоится и далее успешно работает.
На сервере компиляция и деплой тоже проходят без проблем, веб приложение отлично работает, но веб-сервис ругается.
Конфигурация девелоперской машины: Windows 7, Apache Tomcat 6.0.20, jdk 1.6.0_16
Конфигурация сервера: CentOS 5.4, Apache Tomcat 6.0.18, jdk 1.6.0_07
FastInfoset, jaxrpc-api, jaxrpc-impl, jaxrpc-spi, saaj-api, saaj-impl были скопированы на сервер с девелоперской машины.
При попытке пройти по адресу вебсервиса на сервере получаем ошибку:
javax.servlet.ServletException: JAXRPCSERVLET50: caught throwable during servlet initialization:
JAXRPCSERVLET02: error parsing runtime descriptor: XML reader error: java.net.MalformedURLException
Еще заметил разницу, что на локале при старте апача в логе есть такие записи:
15.4.2010 21:36:09 com.sun.xml.rpc.server.http.JAXRPCContextListener contextInitialized
INFO: JAXRPCSERVLET12: JAX-RPC context listener initializing
15.4.2010 21:36:10 com.sun.xml.rpc.server.http.JAXRPCServletDelegate init
INFO: JAXRPCSERVLET14: JAX-RPC servlet initializing
На сервере есть только:
15.4.2010 21:36:09 com.sun.xml.rpc.server.http.JAXRPCContextListener contextInitialized
INFO: JAXRPCSERVLET12: JAX-RPC context listener initializing
Компиляция и деплой в обоих случаях проводится при помощи ant.
Может кто-нить что подскажет?
UPD проблема решилась добавлением и должной настройкой jaxrpc-ri-runtime.xml, странно что на девелоперской машине все корректно работало и без него.
February 10th, 2010
Позавчера (08-FEB-2010) Apache внезапно (по крайней мере для меня) разродился Ant 1.8.0.
Кому лень ходить к ним на сайт, см. анонс версии.
Меня больше всего потрясло то, что религия наконец-то позволила им добавить task **<condition>**
.
December 17th, 2008
Дошли руки: обновил ant с 1.7.0 до 1.7.1, ничего больше не менял - билд свалился.
build.xml примитивный: чистим, javac, jar, junit, move из build в dist
Валится на move -> не может удалить сделанный jar в build
Заменил ant'овский move на вызов exec executable - не помогло, сделаный jar явно залочен ("Процесс не может получить доступ к файлу, так как этот файл занят другим процессом.").
Т.е. по моим ощущениям по окончании junit тестов ant перестал отпускать jar.
Кто-нибудь сталкивался? Откатываться на 1.7.0? С июня 2008 если это баг должны были заметить...
January 26th, 2008
Может кто знает, как описать таск в ant, чтобы запустить несколько junit тестов из classpath
по примеру:
`
только вместо
`
подключить фильтр для объектов из classpath. Кто знает как выглядит фильтр?
Или как альтернативным образом запустить тесты из jar?