++添加 我想根据 json 架构文件验证 json。 我目前将 json 保存为 string ,并尝试读取 json 架构文件(即 test.json),然后进行验证。 但是,读取模式文件始终为空..
下面的代码是我到目前为止尝试过的。
++原始帖子。
这就是我目前的情况。 我尝试了很多方法来获取文件(test.json)...
喜欢
InputStream in;
1. in= valid.class.getResourceAsStream("/test.json");
2. in = getClass().getClassLoader().getResourceAsStream("/test.json");
3. in = Thread.currentThread().getContextClassLoader().getResourceAsStream("//test.json");
4. in=getClass().getResourceAsStream("/test.json");
5. in=ValidationUtils.class.getResourceAsStream("../resources/ds/test.json");
6. ClassLoader classLoader = getClass().getClassLoader();
in = classLoader.getResourceAsStream("test.json");
7.in=getClass().getResourceAsStream("/ds/test.json"); //tried just now
System.out.println("in"+in); //this is always null.
没什么..工作..以上.. 请帮助我...
最佳答案
您无法(默认情况下)从 src/main/java
中的代码访问 src/test/resources
资源。所有 src/test/resources
资源仅适用于通常存储在 src/test/java
中并在 test
阶段执行的测试(在 Maven 中) 。在此阶段,测试代码可以通过您在问题中引用的某些(不是全部)方法来访问该资源。
对于您的主类,资源根目录是src/main/resources
。您应该将 JSON 模式文件存储在那里。测试代码还可以访问存储在那里的资源(因此不需要重复),但反之则不然。
关于java - 使用 getResourceAsStream() 从 src/test/resources 获取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52932348/