public static void setupPythonForProject(IJavaProject javaProject,
			List<IClasspathEntry> classpathEntries, ProjectPythonInterpreter pythonInterpreter,
			IProgressMonitor monitor)
			throws CoreException, NoClassDefFoundError, NoSuchMethodError {

		PythonNature.removeNature(javaProject.getProject(), monitor);

		String version;
		String libs;
		switch (pythonInterpreter.type()) {
			case PYGHIDRA:
				version = IPythonNature.PYTHON_VERSION_INTERPRETER;
				libs = null;
				break;
			case JYTHON:
				version = IPythonNature.JYTHON_VERSION_INTERPRETER;
				libs = classpathEntries.stream()
						.map(e -> e.getPath().toOSString())
						.collect(Collectors.joining("|"));
				break;
			default:
				return;
		}

		PythonNature.addNature(javaProject.getProject(), monitor, version, null, libs,
			pythonInterpreter.name(), null);
	}
Sets up Python for the given Java project.

@param javaProject The Java project to setup Python for.
@param classpathEntries The classpath entries to add to the Python path.
@param pythonInterpreter The Python interpreter to use.
@param monitor The progress monitor used during link.
@throws CoreException If there was an Eclipse-related problem with enabling Python for the project.
@throws NoClassDefFoundError if PyDev is not installed or it does not support this operation.
@throws NoSuchMethodError if PyDev is not installed or it does not support this operation.
GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/src/main/java/ghidradev/ghidraprojectcreator/utils/PyDevUtilsInternal.java