Posts Tagged ‘java’

Делаем правильные отступы в java коде

Допустим вы написали какой-то код без любимой IDE под рукой или решили изучить java исходники другого автора. В первом случае вы можете захотеть исправить отступы перед тем, как отослать работу в репозиторий. Во втором случае вы можете захотеть читать исходники в привычном глазу форматировании. И тут вам поможет однострочная команда.

Использование JAMon для мониторинга

Java Application Monitor (JAMon) является бесплатной, высокопроизводительной и потокобезопасной библиотекой для сбора статистики о работе приложения и поиска узких мест, анализа возможностей масштабирования. Можно считать количество брошенных исключений определенного типа, количество SQL запросов, количество запросов JSP страницы. В отчете выдается число вызовов, время выполнения (общее, среднее, минимальное, максимальное, среднеквадратичное отклонение), а также сведения, относящиеся к […]

Пример использования antlr 4

В этой заметке я рассмотрю использование antlr версии 4. Разбирать будем определения макросов для языка С/С++ и сделаем упрощенный препроцессинг — замену в теле макросов параметров на их значения. Упрощения касаются обработки пробелов — пробелы не пропускаются инструкцией skip. В первую очередь из-за того, что пробелы могут быть в теле/описании макроса: «(X) * (X)». Тело […]

Особенности использования плагина jasperreports-maven-plugin в CentOS

Третьего дня понадобилось под CentOS мавеном собрать проект, в котором задействован плагин jasperreports-maven-plugin. Собирал как положено — мавен 3.3.3 и jdk 1.8.0. Сборка начала валиться с ошибкой: [ERROR] class file has wrong version 52.0, should be 50.0[ERROR] class file has wrong version 52.0, should be 50.0 Это навело на мысль, что плагин ищет джаву вовсе […]

Продвинутые SCTP клиент и сервер

Протокол SCTP является очень перспективным и предоставляет множество интересных возможностей. В данной заметке я рассмотрю использование продвинутых SCTP клиента и сервера из примеров netty (простые клиент и сервер рассмотрены тут: Простые SCTP клиент и сервер ). Проект будет на maven. Скорее всего с ходу вам скомпилировать примеры из репозитория (репозиторий) не удастся. Я перечислю еще […]

Ошибки сборки от commons-math3 и commons-pool2

Намедни понадобилось собрать сэмплер для jmeter. Для сборки нужна зависимость org.apache.jmeter.ApacheJMeter_core версии 2.13, которая тянет за собой зависимости из org.apache.commons. Тянет она их опосредованно через ApacheJMeter_parent-2.13.pom. Среди них как минимум две — org.apache.commons.commons-math3 и org.apache.commons.commons-pool2 (скорее всего список неполный) — указаны неверно и вызовут ошибки вида: Multiple annotations found at this line: — Missing artifact […]

Програмная имитация отжига для начинающих

Данная заметка является переводом этой статьи: источник Поиск лучшего решения для определенных задач оптимизации может быть необычайно тяжелым, часто даже практически невозможным. Это происходит из-за того, что при усложнении задачи возрастает число возможных решений из которых нужно выбрать оптимальное. Даже при использовании возможностей современных компьютеров перебор всех вариантов представляется тяжелой задачей. В этом случае мы […]

Разбор рекурсивной грамматики с помощью javacc

Продолжаем создавать парсеры на java с помощью javacc. В этот раз рассмотрим разбор грамматики, которую уже разбирали с помощью lex+yacc тут: ссылка. В той статье есть BNF для данного языка в понятном для yacc виде. Для простоты я опять закомментировал название пакета — если надо, раскоментируйте и ставьте свой. Я собирал с помощью make:

Использование javacc для разбора SQL

Пришло время затронуть тему создания парсеров на java. Для этого воспользуемся утилитой javacc. Update. Плагин Вордпресса для подсвечивания кода стал безнадежно портить исходники — добавлять закрывающие теги там, где они не нужны, дефолтные значения у того, что он считает атрибутами тегов. Неискаженные исходники, адаптированные к javaCC версии 7.0.9 доступны тут: исходники За основу взята эта […]

Простые SCTP клиент и сервер на java

Как только вы начинаете искать работающий java код для этих классов, то получаете в выдаче устаревшие примеры (сомневаюсь, что они работали уже на момент публикации). В этой заметке я разберу пример простых клиента и сервера для протокола SCTP и типовые ошибки при сборке и запуске. Исключение вида java.lang.UnsupportedOperationException: libsctp.so.1: cannot open shared object file: No […]