maven-2 - Maven 站点插件 : How does menu inheritance work?

标签 maven-2 inheritance menu maven-site-plugin

如果我有一个多模块项目,如何从父 POM 继承菜单?项目布局如下:

main <-- main project which just contains modules
   parent   <-- parent POM
   ext      <-- 3rd party code

我在我 parent 的 site.xml 中试过这个:
<menu name="Projects">
   <item name="Main Project" href="${web-root}/" collapse="false">
      <item name="Parent POM" href="${web-root}/parent/" />
      <item name="3rd Party" href="${web-root}/ext/">
   </item>
</menu>

site.xmlext , 我用了:
<menu name="Projects" inherit="top" />

我得到菜单但没有链接。

我还尝试在主项目的 site.xml 中定义菜单但结果是一样的。

最佳答案

我注意到三件事:

第一通知:您必须在父 POM 的 site.xml 中指定继承属性,而不是在子 POM 中。并且在子POM的site.xml中,完全不用重新指定要继承的菜单。

父站点的site.xml:

<menu name="Projects" inherit="top">
  <item ...>
  </item>
</menu>

child 的 site.xml:没有名称为“项目”的菜单定义。

第二次通知:您的项目结构的链接可以自动构建:

父站点的site.xml:
<!-- Inherit this menu for sub modules. -->
<menu ref="parent" inherit="top" />

<!-- Inherit this menu for sub modules. -->
<menu name="Sub Modules" ref="modules" inherit="bottom" />

这将为您生成所有模块间链接。

第三次通知:站点描述符的继承方式与项目描述符的继承方式相同。如果您的模块“ext”应该从其他模块继承站点描述符中的菜单条目,则 ext 在 pom.xml 中必须具有“main”或“parent”作为父级。

关于maven-2 - Maven 站点插件 : How does menu inheritance work?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3422151/

相关文章:

php - 在模板中使用 symfony 的动态菜单

svn - 使用Maven外部化SCM凭证

java - 通过 NetBeans 6.7 *修订*在 SVN 中创建/访问 Maven 存储库

java - 生成项目时,如何有条件地从原型(prototype)中包含或排除文件?

c# - 继承和基础构造函数

html - (CSS) 菜单周围奇怪的白色边框不是边框

maven-2 - 如何在 IDEA 中下载特定 Maven 工件的源代码?

inheritance - Haxe 反射 - 子类和接口(interface)

java - Libgdx/Java 继承问题

c++ - 制作某种菜单时出现问题