GH-133336: Remove reserved ``-J`` flag for Jython (#133444)

diff --git a/Doc/using/cmdline.rst b/Doc/using/cmdline.rst
index fa7c9cd..a4889cf 100644
--- a/Doc/using/cmdline.rst
+++ b/Doc/using/cmdline.rst
@@ -670,6 +670,13 @@
    .. versionchanged:: 3.10
       Removed the ``-X oldparser`` option.
 
+.. versionremoved:: next
+
+   :option:`!-J` is no longer reserved for use by Jython_,
+   and now has no special meaning.
+
+   .. _Jython: https://www.jython.org/
+
 .. _using-on-controlling-color:
 
 Controlling color
@@ -694,15 +701,6 @@
 precedence over ``NO_COLOR``, which in turn takes precedence over
 ``FORCE_COLOR``.
 
-Options you shouldn't use
-~~~~~~~~~~~~~~~~~~~~~~~~~
-
-.. option:: -J
-
-   Reserved for use by Jython_.
-
-.. _Jython: https://www.jython.org/
-
 
 .. _using-on-envvars:
 
diff --git a/Doc/whatsnew/2.6.rst b/Doc/whatsnew/2.6.rst
index fdccfb7..9dbc07a 100644
--- a/Doc/whatsnew/2.6.rst
+++ b/Doc/whatsnew/2.6.rst
@@ -1747,7 +1747,7 @@
 -------------------------------
 
 Two command-line options have been reserved for use by other Python
-implementations.  The :option:`-J` switch has been reserved for use by
+implementations.  The :option:`!-J` switch has been reserved for use by
 Jython for Jython-specific options, such as switches that are passed to
 the underlying JVM.  :option:`-X` has been reserved for options
 specific to a particular implementation of Python such as CPython,
diff --git a/Doc/whatsnew/3.14.rst b/Doc/whatsnew/3.14.rst
index d75ba9a..f09e517 100644
--- a/Doc/whatsnew/3.14.rst
+++ b/Doc/whatsnew/3.14.rst
@@ -805,6 +805,11 @@
   :keyword:`async with`).
   (Contributed by Bénédikt Tran in :gh:`128398`.)
 
+* :option:`!-J` is no longer a reserved flag for Jython_,
+  and now has no special meaning.
+  (Contributed by Adam Turner in :gh:`133336`.)
+
+  .. _Jython: https://www.jython.org/
 
 .. _whatsnew314-pep765:
 
diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-05-05-15-33-35.gh-issue-133336.miffFi.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-05-05-15-33-35.gh-issue-133336.miffFi.rst
new file mode 100644
index 0000000..8516582
--- /dev/null
+++ b/Misc/NEWS.d/next/Core_and_Builtins/2025-05-05-15-33-35.gh-issue-133336.miffFi.rst
@@ -0,0 +1,2 @@
+:option:`!-J` is no longer reserved for use by Jython.
+Patch by Adam Turner.
diff --git a/Python/getopt.c b/Python/getopt.c
index 39a6938..79bea23 100644
--- a/Python/getopt.c
+++ b/Python/getopt.c
@@ -37,7 +37,7 @@ static const wchar_t *opt_ptr = L"";
 
 /* Python command line short and long options */
 
-#define SHORT_OPTS L"bBc:dEhiIJm:OPqRsStuvVW:xX:?"
+#define SHORT_OPTS L"bBc:dEhiIm:OPqRsStuvVW:xX:?"
 
 static const _PyOS_LongOption longopts[] = {
     /* name, has_arg, val (used in switch in initconfig.c) */
@@ -133,13 +133,6 @@ int _PyOS_GetOpt(Py_ssize_t argc, wchar_t * const *argv, int *longindex)
         return opt->val;
     }
 
-    if (option == 'J') {
-        if (_PyOS_opterr) {
-            fprintf(stderr, "-J is reserved for Jython\n");
-        }
-        return '_';
-    }
-
     if ((ptr = wcschr(SHORT_OPTS, option)) == NULL) {
         if (_PyOS_opterr) {
             fprintf(stderr, "Unknown option: -%c\n", (char)option);