我正在使用的Spring-GraphQL服务需要在运行时存在schema.graphqls
文件。spring-graphql文档描述了可以解析schema的默认位置:
默认情况下,GraphQL模式文件应该是src/main/resources/graphql
,扩展名为".graphqls"
、".graphql"
、".gql"
或".gqls"
。
我想使用的schema位于classpath上的另一个jar中。Spring文档表明属性spring.graphql.schema.locations
可以用来改变文件的位置:
您可以自定义要检查的模式位置,如下所示:spring.graphql.schema.locations=classpath:graphql/
我已经尝试了几个值(比如classpath:**
),但是我似乎不能给予正确的位置。有人知道当模式位于单独的目录中时应该使用什么值吗?
我已经使用SomeClass.class.getResource("/schema.graphqls").toURI();
验证了模式资源的存在,它返回了模式URI:
jar:file:/home/{myname}/.m2/repository/com/organisation/some-external-lib/1.2.3/some-external-lib-1.2.3.jar!/schema.graphqls
字符串
1条答案
按热度按时间wooyq4lh1#
我发现了一个thread on github,其中讨论了类似的问题。我通过使用以下配置修复了我的问题:
字符串