---------------------------------------------------------------------------
FileNotFoundError                         Traceback (most recent call last)
Cell In[12], line 3
      1 for pname in all_applicable_planners:
      2   with OneshotPlanner(name=pname) as planner:
----> 3     res = planner.solve(problem)
      4     print(res)
File /workspaces/engineering-ai-agents/.venv/lib/python3.11/site-packages/unified_planning/engines/mixins/oneshot_planner.py:80, in OneshotPlannerMixin.solve(self, problem, heuristic, timeout, output_stream)
     78     msg = f"The problem has no quality metrics but the engine is required to be optimal!"
     79     raise up.exceptions.UPUsageError(msg)
---> 80 return self._solve(problem, heuristic, timeout, output_stream)
File /workspaces/engineering-ai-agents/.venv/lib/python3.11/site-packages/unified_planning/engines/pddl_planner.py:178, in PDDLPlanner._solve(self, problem, heuristic, timeout, output_stream)
    174 process_start = time.time()
    175 if output_stream is None:
    176     # If we do not have an output stream to write to, we simply call
    177     # a subprocess and retrieve the final output and error with communicate
--> 178     process = subprocess.Popen(
    179         cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE
    180     )
    181     timeout_occurred: bool = False
    182     proc_out: List[str] = []
File /opt/rye/py/cpython@3.11.11/lib/python3.11/subprocess.py:1026, in Popen.__init__(self, args, bufsize, executable, stdin, stdout, stderr, preexec_fn, close_fds, shell, cwd, env, universal_newlines, startupinfo, creationflags, restore_signals, start_new_session, pass_fds, user, group, extra_groups, encoding, errors, text, umask, pipesize, process_group)
   1022         if self.text_mode:
   1023             self.stderr = io.TextIOWrapper(self.stderr,
   1024                     encoding=encoding, errors=errors)
-> 1026     self._execute_child(args, executable, preexec_fn, close_fds,
   1027                         pass_fds, cwd, env,
   1028                         startupinfo, creationflags, shell,
   1029                         p2cread, p2cwrite,
   1030                         c2pread, c2pwrite,
   1031                         errread, errwrite,
   1032                         restore_signals,
   1033                         gid, gids, uid, umask,
   1034                         start_new_session, process_group)
   1035 except:
   1036     # Cleanup if the child failed starting.
   1037     for f in filter(None, (self.stdin, self.stdout, self.stderr)):
File /opt/rye/py/cpython@3.11.11/lib/python3.11/subprocess.py:1955, in Popen._execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, gid, gids, uid, umask, start_new_session, process_group)
   1953     err_msg = os.strerror(errno_num)
   1954 if err_filename is not None:
-> 1955     raise child_exception_type(errno_num, err_msg, err_filename)
   1956 else:
   1957     raise child_exception_type(errno_num, err_msg)
FileNotFoundError: [Errno 2] No such file or directory: 'java'