我想找一个框架,它能够比较两个yaml-files的内容。
我找到了一个链接,他们是如何用ruby描述的。如何比较yaml文件中的键?
但我正在寻找一个Java框架。
如果结果能像 "git diff "命令一样显示出来,那就更好了。
谢谢,谢谢
你可以通过使用 补丁 和jackson-yaml...
添加下面的依赖关系。
implementation 'com.flipkart.zjsonpatch:zjsonpatch:0.4.10'
implementation 'com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:2.9.8'
用这个试试
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.dataformat.yaml.YAMLFactory;
import com.flipkart.zjsonpatch.JsonDiff;
import java.io.File;
public class Main {
public static void main(String[] args) throws Exception{
ObjectMapper objectMapper = new ObjectMapper(new YAMLFactory());
JsonNode file1 = objectMapper.readTree(new File("/your/file/path/file1.yml"));
JsonNode file2 = objectMapper.readTree(new File("/your/file/path/file2.yml"));
JsonNode patch = JsonDiff.asJson(file1, file2);
String diffs = patch.toString();
System.out.println(diffs);
}
}