def query_data(self, query):
        from .jdk_manager import JDKManager
        helpers = sublime.find_resources("JavatarAutocompleteHelper.jar")
        helper_file = None
        for helper in helpers:
            if helper[:9] == "Packages/":
                helper = os.path.join(sublime.packages_path(), helper[9:])
            if os.path.exists(helper) and self.verify_helper(helper):
                helper_file = helper
                break
        if not helper_file:
            return None
        executable = JDKManager().get_executable("run")
        if not executable:
            return None

        dependencies = [
            dependency[0]
            for dependency
            in DependencyManager().get_dependencies()
        ]
        runtime_path = JDKManager().get_runtime_file("runtime")
        if runtime_path:
            dependencies.append(runtime_path)
        exclusion = Settings().get("java_exclude_packages", [])

        if exclusion:
            exclusion = " -xp %s" % (shlex.quote(os.pathsep.join(exclusion)))
        else:
            exclusion = ""
        if dependencies:
            dependencies = " -cp %s" % (shlex.quote(os.pathsep.join(dependencies)))
        else:
            dependencies = ""

        helper_script = "%s -jar %s%s%s %s" % (
            shlex.quote(executable),
            shlex.quote(helper_file),
            exclusion,
            dependencies,
            query
        )
        return GenericBlockShell().run(helper_script)
dataset/ETHPy150Open spywhere/Javatar/core/helper_service.py/_HelperService.query_data/original