I want to write a piece of code, which will handle GraphQL queries like these:
  query {
      group(id: "com.graphql-java")
      name(name: "graphql-java")
      version(id: "2.3.0")
  }
I've created a data fetcher and put a breakpoint inside the get method:
  import graphql.schema.DataFetcher;
  import graphql.schema.DataFetchingEnvironment;
  public class TestDataFetcher implements DataFetcher {
      public Object get(final DataFetchingEnvironment dataFetchingEnvironment) {
          return null;
      }
  }
Then I wrote the following code:
  public class Example02 {
      public static void main(final String[] args) throws IOException {
          final Example02 app = new Example02();
          app.run();
      }
      void run() throws IOException {
          final TestDataFetcher testDataFetcher = new TestDataFetcher();
          final List<GraphQLFieldDefinition> fields = Lists.newArrayList(
                  createGroupField(testDataFetcher),
                  createNameField(),
                  createVersionField());
          final GraphQLObjectType queryType = newObject()
                  .name("query")
                  .fields(fields)
                  .build();
          final GraphQLSchema schema = GraphQLSchema.newSchema()
                  .query(queryType)
                  .build();
          final String query = FileUtils.readFileToString(
                  new File("src/main/resources/query1.txt"),
                  "UTF-8"
          );
          final Map<String, Object> result = (Map<String, Object>) new GraphQL(schema).execute(query).getData();
          System.out.println(result);
      }
      private GraphQLFieldDefinition createVersionField() {
          return newFieldDefinition().type(GraphQLString).name("version").build();
      }
      private GraphQLFieldDefinition createNameField() {
          return newFieldDefinition().type(GraphQLString).name("name").build();
      }
      private GraphQLFieldDefinition createGroupField(TestDataFetcher testDataFetcher) {
          final GraphQLArgument idArg = newArgument().name("id").type(GraphQLString).build();
          return newFieldDefinition()
                  .type(GraphQLString)
                  .name("group")
                  .dataFetcher(testDataFetcher)
                  .argument(idArg)
                  .build();
      }
  }
When I run the main method in debug mode, the breakpoint is not activated.
Why? How can I fix it?
 
     
     
     
    