Архив категории «Разработка»
Runtime.exec (): cygwin vs Linux
Убил несколько часов на разбирательство с простым на первый взгляд кодом:
String command = "bash -c 'ls > ls.txt'"; Process p = Runtime.getRuntime().exec( command, null, null );
С cygwin всё работает как надо: создается файл ls.txt с результатами работы ls.
Зато под Linux происходит странное:
>: -c: line 0: unexpected EOF while looking for matching `'' >: -c: line 1: syntax error: unexpected end of file
Полный откомпилированный пример здесь. Можете запустить командой 'java ExecRedirect' на своей системе.
Ну что, рассказать решение или сами подумаете?
23.10.2007
Метки: cygwin, Java, Linux Рубрики: Разработка
Комментариев нет
Сборка проектов: Eclipse и Ant
Сборка Java-проектов производится либо из среды разработки, либо в пакетном режиме. Первый вариант используется в процессе кодирования для исправления ошибок компиляции и отладки. Второй вариант необходим для непрерывной интеграции (continuous integration), тестирования и сборки релизов. Если разработку вести в среде Eclipse, а для пакетной сборки пользоваться Ant, многие правила сборки приходится определять дважды: в Eclipse — каждое действие, которое необходимо выполнить, оформляется в виде билдера (builder), и в Ant — для каждой осмысленной группы действий определяется цель (target).
18.10.2007
Метки: Ant, Eclipse Рубрики: Разработка
Комментариев нет
TreeDL — язык описания структуры деревьев

Эпиграф: не потому, что других идей нет, а потому, что эта — любимая. © забыл чей
На прошлой неделе выпустил новую версию TreeDL 2.3.2. Предыдущую версию за 16 месяцев скачали ну от силы 250 раз. За два дня после выхода этой по статистике SourceForge было скачано 120 файлов, причем новую версию скачали меньше 20 раз. Проект выскочил в Top500.
При этом сообщений о выходе новой версии нигде не было. Анонс в список рассылки я отправил уже после этого ажиотажа, да и подписчиков там 4 человека всего. На вебе никаких новых ссылок на проект, вроде, не появилось. Интересно, откуда взялась такая активность? Есть предположение, что это какой-то робот ходит, но я о таких не слышал.
TreeDL — это мой проект, который появился для облегчения работы над основными проектами по разработке трансляторов.
29.07.2007
Метки: TreeDL Рубрики: Разработка, Языки
Комментариев нет
Маленькая задачка для C программистов
Мой коллега Александр Сортов поделился маленькой задачкой для C программистов:
Попробуйте без компьютера сообразить, сколько слов «before» и «after» будет напечатано после выполнения этого кода?
#include <stdio .h> int main() { int pid; printf("before"); pid = fork(); printf("\nafter"); if(pid == 0) { _exit(); } printf("\n"); } </stdio>
25.07.2007
Метки: C Рубрики: Разработка, Языки
2 комментария
Странности Ant-билдеров в Eclipse 3.3
В Eclipse можно указать четыре события, при наступлении которых будут запускаться внешние билдеры: During a «Clean», After a «Clean», Manual Build и Auto Build. То есть, во время очистки сгенерированных файлов, после этого, а также во время сборки проекта вручную и автоматически. Причем, в последних двух случаях можно дополнительно указать набор исходных файлов (relevant resources) и билдер будет запускаться только при изменении этих файлов.
Билдер, который осуществляет генерацию какого-нибудь файла, часто используется только в последних трех случаях — полную очистку проекта проще осуществить отдельно, не разбираясь, к какому билдеру относятся сгенерированные файлы.
В Eclipse 3.3 Ant-билдеры, для которых указаны relevant resources и которые не работают During a «Clean», не запускаются и After a «Clean»! В 3.2 всё было нормально. Будьте бдительны!
17.07.2007
Метки: Ant, Eclipse Рубрики: Разработка
Комментариев нет
Баг репорты и прочая помощь проектам
Пофиксенный с моей подачи баг в Jamon стал поводом задуматься — какую помощь я оказал открытым (и не только) проектам? Интересно попытаться вспомнить и собрать все это в одном месте. Баг-репорты, между прочим, тоже помощь — бесплатным тестированием.
16.07.2007
Рубрики: Разработка
Комментариев нет
Управление зависимостями в стиле Maven для Ant
Ant и Maven — это распространенные инструменты сборки Java проектов. У Maven есть безусловное преимущество — он умеет автоматически скачивать зависимости, необходимые для сборки проекта. Оказывается, для Ant есть Dependendcies Download task, позволяющая делать то же самое, причем пользоваться Maven-репозиториями.
Ссылка по теме: Dependency Management Choices: Maven, Ant + Maven Antlib, Ivy.
07.07.2007
Метки: Ant, Ivy Рубрики: Разработка
Комментариев нет
Про отладку
В коллекцию забавных происшествий при отладке программ добавилось ещё одно.
03.07.2007
Метки: Eclipse, Java, отладка Рубрики: Разработка
Комментариев нет
ppm не работает на x64
Теперь я знаю, что неработоспособность ppm в perl-MSWin32-x64 — это не баг, а фича:
http://community.activestate.com/forum-topic/ppm4-mswin32-x64-404-erro
21.06.2007
Метки: Perl Рубрики: Разработка, Языки
Комментариев нет
Картинки внутри php файлов
В WordPress плагине Brian's Threaded Comments используются не очень красивые значки '-' и '+' для свернутых и развернутых веток.
14.06.2007
Метки: PHP Рубрики: WordPress, Разработка, Языки
Комментариев нет
ЖЖ