2016-06-16 4 views
3

У меня есть руководство пользователя, которое использует AsciiDoc, это очень красиво, несмотря на то, что я не потратил на это много времени.Как передать переменную Maven в asciidoctor-maven-plugin?

Плагины AsciiDoc являются прекрасными. Поэтому я хочу передать свое окончательное имя Maven в руководстве пользователя.

Вопрос: Как это сделать?

<finalName>${project.artifactId}-${project.version}-${version.state}-r${buildNumber}</finalName> 

Мои asciidoctor-maven-plugin конфигурации:

<plugin> 
    <groupId>org.asciidoctor</groupId> 
    <artifactId>asciidoctor-maven-plugin</artifactId> 
    <version>${asciidoctor.maven.plugin.version}</version> 
    <dependencies> 
     <dependency> 
      <groupId>org.asciidoctor</groupId> 
      <artifactId>asciidoctorj-pdf</artifactId> 
      <version>${asciidoctorj.pdf.version}</version> 
     </dependency> 
     <!-- Comment this section to use the default jruby artifact provided by the plugin --> 
     <dependency> 
      <groupId>org.jruby</groupId> 
      <artifactId>jruby-complete</artifactId> 
      <version>${jruby.version}</version> 
     </dependency> 
     <!-- Comment this section to use the default AsciidoctorJ artifact provided by the plugin --> 
     <dependency> 
      <groupId>org.asciidoctor</groupId> 
      <artifactId>asciidoctorj</artifactId> 
      <version>${asciidoctorj.version}</version> 
     </dependency> 
    </dependencies> 
    <configuration> 
     <sourceDirectory>src/docs/asciidoc</sourceDirectory> 
     <sourceDocumentName>manual.adoc</sourceDocumentName> 
     <!-- Attributes common to all output formats --> 
     <attributes> 
      <sourcedir>${project.build.sourceDirectory}</sourcedir> 
     </attributes> 
    </configuration> 
    <executions> 
     <execution> 
      <id>generate-pdf-doc</id> 
      <phase>generate-resources</phase> 
      <goals> 
       <goal>process-asciidoc</goal> 
      </goals> 
      <configuration> 
       <backend>pdf</backend> 
       <!-- Since 1.5.0-alpha.9 PDF back-end can use 'rouge' as well as 'coderay' 
      source highlighting --> 
       <sourceHighlighter>rouge</sourceHighlighter> 
       <attributes> 
        <icons>font</icons> 
        <pagenums/> 
        <toc/> 
        <idprefix/> 
        <idseparator>-</idseparator> 
       </attributes> 
      </configuration> 
     </execution> 
    </executions> 
</plugin> 

ответ

7

official user guide крышка в этом случае в Passing POM properties разделе:

можно передать свойства, определенные в POM к процессору Asciidoctor. Это удобно, например, включить в сгенерированный документ номер версии артефакта POM.

Это делается путем создания пользовательского свойства AsciiDoc в разделе attributes раздела configuration. Значение свойства AsciiDoc определяется обычным способом Maven: ${myMavenProperty}.

<attributes> 
    <project-version>${project.version}</project-version> 
</attributes> 

Обычай свойство AsciiDoc может быть использован в документе, как это:

The latest version of the project is {project-version}. 

Соответственно, вы можете таким образом применить следующее существующую configuration:

<configuration> 
    <sourceDirectory>src/docs/asciidoc</sourceDirectory> 
    <sourceDocumentName>manual.adoc</sourceDocumentName> 
    <!-- Attributes common to all output formats --> 
    <attributes> 
     <sourcedir>${project.build.sourceDirectory}</sourcedir> 
     <!-- the new property --> 
     <final-name>${project.build.finalName}</final-name> 
    </attributes> 
</configuration> 
+0

User-guide of ASCII Doc настолько хорош, что до сих пор мне стыдно, что я его не нашел. Спасибо. Ди Маттео. – Xelian

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

  • Нет связанных вопросов^_^