2014-01-24 3 views
1

Я работаю над проектом, который распространяется как плагин IntelliJ. Некоторые из необходимых источников для проекта создаются на этапе генерации кода перед компиляцией исходных файлов Java. Эти сгенерированные файлы не помещаются в исходное управление.Запуск генератора кода во время сборки плагина IntelliJ

У меня есть задачи Ant и плагин Maven для этого генератора кода, который надежно интегрирует шаг генерации кода в любую из этих двух систем сборки.

Как генерировать код поддержки IntelliJ во время процесса сборки для проекта плагина IntelliJ?

ответ

1

IntelliJ развертывания плагин поддерживает генерацию кода косвенно :)

Каждый раз, когда ваш запуск сборки> Подготовка плагинов модуля для развертывания, IntelliJ вызывающую «Make» команду.

Что вам нужно сделать, это отметить задачу Ant или Maven как «Выполнение перед созданием», тогда каждый раз, когда вы запускаете Make или Prepare Plugin For Deployment, выбранная задача будет выполнена.

enter image description here

Как я могу запустить фазу порождающие-источники? Я не вижу способа включить новые фазы в Lifecycle.

Ваш плагин должен иметь generate-sources цели.

Образец POM

<project> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.mycompany.app</groupId> 
    <artifactId>eclipser</artifactId> 
    <version>1</version> 
    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.codehaus.modello</groupId> 
       <artifactId>modello-maven-plugin</artifactId> 
       <version>1.4</version> 
       <executions> 
        <execution> 
         <configuration> 
          <models> 
           <model>src/main/mdo/maven.mdo</model> 
          </models> 
          <version>4.0.0</version> 
         </configuration> 
         <goals> 
          <goal>java</goal> 
         </goals> 
        </execution> 
       </executions> 
      </plugin> 
     </plugins> 
    </build> 
</project> 

enter image description here

+0

Как я могу запустить 'генерировать-sources' фазу? Я не вижу способа включить новые фазы в ** Lifecycle **. –

+0

Ваш плагин должен иметь цель генерации источников. – kukido

Смежные вопросы