Хотел поделиться своими наработками в области автоматизации процесса сборки javascript проекта использующего Google Closure Compiler и Google Closure Library при помощи Apache Maven. Страничка проекта https://github.com/urmuzov/closure-maven, там же лежит документация по каждому из компонентов проекта.
О проекте
Главный компонент проекта — это архетип. Архетип объединяет в себя все остальные компоненты проекта, которые при желании могут использоваться отдельно от него.
Архетип предоставляет средства для решения самых часто встречающихся задач при разработке, а именно:
Запаковывает javascript код в maven артефакты для распространения (такие артефакты содержат помеченные пакеты специальной структуры, названные closure-packages);
Распаковывает closure-packages из подключенных в <dependencies> артефактов для компиляции;
Помогает в объединении и оптимизации js и css файлов при помощи Web Resource Optimizer for Java (wro4j);
Предоставляет 5 профилей компиляции для разных целей:
compiled — для «боевой» сборки проекта. Уровень компиляции ADVANCED_OPTIMIZATIONS;
merged — для склеивания всех исходных js файлов в один, фактически без компиляции. Уровень компиляции WHITESPACE_ONLY, форматирование PRETTY_PRINT;
sources — для дебага javascript файлов в бразуере. Компиляция происходит как и в профиле compiled, но в html будут подключены файлы с исходными кодами;
sources-no-compile — для дебага html/css файлов. Компиляции не происходит, просто в html подключаются файлы с исходными кодами;
jar — для сборки jar-архива для распространения;
Генерирует jsdoc и jslint отчеты при выполнении mvn site.
2011-10-10 21:56:16
Привет всем! Всем любителям и пользователям ОС Android, а также присматривающимся, предлагаю к ...
+ развернуть текстсохранённая копия
Привет всем! Всем любителям и пользователям ОС Android, а также присматривающимся, предлагаю к просмотру видеообзор приложений и игр для Android. KedDroid — это еженедельный сборник самых актуальных игр и приложений, среди которых будут как новинки, так и уже известные аппсы. Приятного просмотра!
Рея является истинным воплощением «девушки, живущей по соседству». Она встречается с Лувом Нанда — самым богатым и самым популярным мальчиком в колледже. Накануне её 18-летия, они планируют перевести свои отношения на «новый уровень». Но всё меняется, когда она случайно узнаёт, что Лув не такой уж и хороший, как она о нём думала раньше. Рея решает не выходить из себя, а с … Continue reading →
Вот что мне всегда нравилось в джаве, так это Maven. Один файл со списком всего нужного, и никаких бинарников в репозитории. Когда появился NuPack, я решил — ура, вот оно, счастье пришло на нашу улицу. Но не тут то было. NuPack представлял удобный интерфейс для работы с пакетами… но без возможности нормально вкрутится в процесс сборки.
Поковырял я его тогда, посмотрел, но так реальной пользы и не увидел. Не больно большая помощь — качать ручными powershell-командами пакеты поименно. Ну да, удобнее, чем скачивать фиг знает откуда, да еще руками references добавлять, но ведь мне это далеко не каждый день нужно. В общем, игра не стоит свеч.
Но в один прекрасный день я понял, что с папкой Shared\Bin в моем сорц-контроле нужно что-то делать, ибо распухла она уже неимоверно. Решил глянуть я, не изменилось ли что-нибудь с NuPack-ом, который уже NuGet-ом стал именоваться? Нет, воз и дальше там.
В последнее время на Хабре все больше упоминаний о KnockoutJS, и я не останусь в стороне от этого тренда.
Сегодня я расскажу о том как сделать своими руками Ajax Grid View с фильтрацией и переходом по страницам написав, при этом, совсем немного кода.
Начиная писать эту статью я чувствовал себя несколько неловко, да и сейчас ощущение не ушло. Все дело в том, что сама библиотека простая, паттерн MVVM простой, и рассказывать я буду простые вещи. Я уверен, что в ближайшее время Knockout получит достаточно большое распространение. А неловко мне от того, что уже через год-дугой кто-то наткнувшись на эту статью будет обескуражен простотой изложенного материала. Примерно так, как любой из вас сейчас, открывший статью о jQuery от 2007 года.
Кто не испугался предполагаемого баяна, милости прошу под хабракат.