В нашем корпоративном приложении мы ищем динамический способ сбора данных из наших классов Java. Мы создали собственный интерфейс аннотаций (@interface
). со свойством name
. Мы хотели бы получить значение этого свойства из всех аннотированных классов.
Мне удалось создать AnnotationProcessorFactory
и AnnotationProcessor
для пользовательской аннотации. Поскольку мы используем Maven 2, я добавил следующее в плагины в pom.xml
основного проекта.
org.codehaus.mojo
apt-maven-plugin
1.0-alpha-5
our.company.api.component.lister.ComponentAnnotationProcessFactory
Он находится в основном проекте, который имеет несколько подпроектов -. Фабрика и пользовательский процессор находятся в одном из этих подпроектов -. Пользовательские аннотации разбросаны по всем подпроектам -, поэтому я поместил плагин в pom.xml
основного проекта.
Проблема в том, что когда я запускаю команду mvn apt:process
, я получаю предупреждение об аннотациях без процессоров, и среди них есть наша пользовательская аннотация. Я предполагаю, что это означает, что плагин не может найти фабричный класс.
Что нужно сделать, чтобы плагин нашел фабрику и файл процессора?
РЕДАКТИРОВАТЬ:
Иерархия проекта очень проста:
main_project
|-sub_project1
|...
|-sub_projectn
Плагин находится в pom.xml
из main_project
. Просто предположим, что фабрика и процессор находятся в sub_project1
, а пользовательские аннотации — в sub_project2
, sub_project3
,..., sub_projectn
-. 121 ---1631638-
У меня есть проект с версией 2, и я должен начать работать над ним, чтобы разработать новую версию 3. Я хочу создать новое репо на удаленном сервере (, то есть на меркуриальном -сервере ), чтобы член моей команды мог получить доступ к этому репо. У меня есть файл проекта на моей локальной машине.
У меня два волнующих вопроса:
Как я могу создать его в/home/hg/repositories/private/project3
(Допустим, имя нового репо будет project3 )удаленного сервера mercurial -с моими файлами проекта. Какие шаги я должен выполнить, чтобы сделать это.
Как я могу создать разрешение на доступ (имя пользователя/пароль ), чтобы моя команда могла получить доступ к этому репозиторию наhttp://dev.myproject.com/private/project3.
Примечание:/home/hg/repositories/
по умолчанию дляhttp://dev.myproject.com/и у меня нет репо версии 2 (клон невозможен, я думаю!)