如何遍历所有JBake配置选项?
遍历JBake所有配置选项的方法
当然可以遍历所有JBake配置选项!不管你是在模板里直接使用,还是通过API扩展JBake,都有对应的实现方式:
1. 在模板中遍历(最常用场景)
JBake会把所有配置项注入到模板上下文里,你可以直接在模板语言中遍历配置的键值对:
Freemarker模板示例
<#list config?keys as key> ${key}: ${config[key]} </#list>
Groovy模板示例
<% config.each { key, value -> %> ${key}: ${value} <% } %>
这样就能输出所有合并后的配置项(包括JBake默认配置 + 你自定义的jbake.properties配置)。
2. 通过JBake API遍历(扩展开发场景)
如果是开发自定义JBake插件或者扩展逻辑,可以直接调用JBake的Configuration类方法获取所有配置:
Java代码示例
import org.jbake.configuration.Configuration; // 假设你已经获取到Configuration实例config config.getAllProperties().entrySet().forEach(entry -> { String key = (String) entry.getKey(); Object value = entry.getValue(); System.out.println(key + ": " + value); });
Groovy代码示例
import org.jbake.configuration.Configuration // 假设config是获取到的Configuration实例 config.getAllProperties().each { key, value -> println "${key}: ${value}" }
getAllProperties()方法会返回包含所有配置的Properties对象,里面包含了所有默认和自定义的配置项。
内容的提问来源于stack exchange,提问作者Hengrui Jiang
相关产品推荐
相关产品推荐

