当我在一个简单的Maven项目上运行没有site.xml的mvn site
时(意味着它将使用maven默认皮肤),site使用了哪个site.vm文件?
我已经研究了maven网站插件,maven项目信息报告插件,maven doxia网站工具,当然还有maven默认皮肤,但是我在任何地方都找不到它。
对于maven-fluido-skin,我可以在src/main/resources/META-INF/maven
中找到site.vm,但是maven-default-skin没有这样的文件。
1条答案
按热度按时间58wvjzkj1#
当使用maven-site-plugin 4.0.0-M3时,使用的maven-doxia-sitetools版本是2.0.0-M3。此版本在其资源中提供了default-site.vm文件,如果皮肤没有提供任何模板(例如maven-default-skin),则将其用作
DefaultSiteRenderer
类中的默认模板。在maven-site-plugin 4.0.0-M4中,maven-doxia-sitetools的版本为2.0.0-M4。在此版本中,删除了default-site.vm,并将默认皮肤更改为maven-fluido-skin。
这意味着不可能再使用不提供site.vm模板的皮肤。如果试图强制使用版本4.0.0-M4的maven-default-skin,将失败并显示消息 Skin does not contain template at META-INF/maven/site.vm。
此更改已在https://issues.apache.org/jira/browse/DOXIASITETOOLS-270中完成。maven-default-skin未维护,将替换为maven-fluido-skin,请参见https://issues.apache.org/jira/browse/MSKINS-196。
作为参考,site.vm是一个Velocity模板文件,由maven-doxia-sitetools(准确地说是doxi-site-renderer)根据maven-site-plugin的请求呈现。