Как заставить javac компилятор записать вывод и в файл и в консоль?

Существует несколько частей к поисковой системе. Вообще говоря, безнадежно общим способом (люди, не стесняются редактировать , если Вы чувствуете, можно добавить лучшие описания, ссылки, и т.д.):

  1. поисковый робот . Это - часть, которая проходит сеть, захватывает страницы и хранит информацию о них в некоторое центральное хранилище данных. В дополнение к самому тексту Вы захотите вещи как время, Вы получили доступ к нему и т.д. Поисковый робот должен быть достаточно умным для знания, как часто поразить определенные домены, для повиновения соглашению robots.txt, и т.д.

  2. синтаксический анализатор . Это считывает данные, выбранные поисковым роботом, синтаксические анализы это, сохраняет любые метаданные, это должно, выбрасывает спам, и возможно делает предложения к поисковому роботу на том, что выбрать в следующий раз вокруг.

  3. индексатор . Читает материал синтаксический анализатор, проанализированный, и создает инвертированные индексы в условия, найденные на веб-страницах. Это может быть столь умно, как Вы хотите, чтобы он был - применяют методы обработки естественного языка, чтобы сделать индексы понятий, вещей перекрестной ссылки, добавить синонимы, и т.д.

  4. занимающий место механизм . Учитывая несколько тысяч URL, соответствующих "яблоку", как Вы решаете, какой результат является лучшим? Выступ индекс не дает Вам ту информацию. Необходимо проанализировать текст, связывающуюся структуру, и безотносительно других частей, Вы хотите посмотреть на и создать некоторые очки. Это может быть сделано полностью на лету (это действительно твердо), или на основе некоторых предварительно вычисленных понятий "экспертов" (см. PageRank, и т.д.).

  5. фронтэнд . Что-то должно получить пользовательские запросы, поразить центральный механизм и ответить; это что-то должно быть умным о кэшировании результатов, возможно смешивании в результатах других источников, и т.д. Это имеет свой собственный набор проблем.

Мой совет - выбирает, который из этих интересов Вы больше всего, загрузите Lucene или Xapian или любой другой проект с открытым исходным кодом там, вытащите бит, который делает одну из вышеупомянутых задач и пытается заменить ее. Хотелось бы надеяться, с чем-то лучше:-).

Некоторые ссылки, которые могут оказаться полезными: "Гибкий поисковый робот" , статья из Эстонии (на английском языке) Поисковая система Сфинкса , индексация и поисковый API. Разработанный для большого DBS, но модульный и открытый. "Информационный поиск , учебник о IR от Manning и др. Хороший обзор того, как индексы создаются, различные проблемы, которые подходят, а также некоторое обсуждение проверки, и т.д. Бесплатная онлайн версия (на данный момент)!

6
задан Yash P Shah 20 April 2018 в 21:37
поделиться

3 ответа

Только что наткнулся на другую альтернативу, использующую задачу записывающего устройства. Ближе, так как вам не нужно вводить новые цели.

<compile >
    <record name="log.txt" action="start"/>
    <javac ...
    <record name="log.txt" action="stop"/>
<compile/>
10
ответ дан 9 December 2019 в 20:47
поделиться

вы можете использовать tee для любого процесса в командной строке для вывода на консоль и в файл:

>myprocess.sh | tee myprocess.log

выведет вывод myprocess.sh как на консоль, так и на myprocess.log.

0
ответ дан 9 December 2019 в 20:47
поделиться

используйте задачу ant с атрибутом вывода для вызова цели, которая имеет задачу javac.

например,

<target name="javac" depends="libs" description="Compile java source">
    <mkdir dir="${classes.dir}" />
    <ant target="actual-javac" output="javac.log"/>
</target>

<target name="actual-javac">
    <javac .../>
    </javac>
</target>
2
ответ дан 9 December 2019 в 20:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: