diff --git a/src/java.base/share/classes/java/io/FilePermission.java b/src/java.base/share/classes/java/io/FilePermission.java
index 1330766b07852..aa6f11e00ee87 100644
--- a/src/java.base/share/classes/java/io/FilePermission.java
+++ b/src/java.base/share/classes/java/io/FilePermission.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2024, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2025, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -67,7 +67,7 @@
*
* The actions string is converted to lowercase before processing.
*
- * @apiNote
+ * @deprecated
* This permission cannot be used for controlling access to resources
* as the Security Manager is no longer supported.
*
@@ -83,6 +83,7 @@
* @serial exclude
*/
+@Deprecated(since="25", forRemoval=true)
public final class FilePermission extends Permission implements Serializable {
/**
@@ -1115,6 +1116,7 @@ public FilePermissionCollection() {
* has been marked readonly
*/
@Override
+ @SuppressWarnings("removal")
public void add(Permission permission) {
if (! (permission instanceof FilePermission fp))
throw new IllegalArgumentException("invalid permission: "+
@@ -1152,6 +1154,7 @@ public void add(Permission permission) {
* the set, false if not.
*/
@Override
+ @SuppressWarnings("removal")
public boolean implies(Permission permission) {
if (! (permission instanceof FilePermission fperm))
return false;
@@ -1180,6 +1183,7 @@ public boolean implies(Permission permission) {
* @return an enumeration of all the FilePermission objects.
*/
@Override
+ @SuppressWarnings("removal")
public Enumeration elements() {
return perms.elements();
}
diff --git a/src/java.base/share/classes/java/io/ObjectStreamConstants.java b/src/java.base/share/classes/java/io/ObjectStreamConstants.java
index 1768a9667a281..5015d9bc15b41 100644
--- a/src/java.base/share/classes/java/io/ObjectStreamConstants.java
+++ b/src/java.base/share/classes/java/io/ObjectStreamConstants.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1996, 2024, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2025, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -186,6 +186,7 @@ public interface ObjectStreamConstants {
* @see java.io.ObjectInputStream#enableResolveObject(boolean)
* @since 1.2
*/
+ @SuppressWarnings("removal")
static final SerializablePermission SUBSTITUTION_PERMISSION =
new SerializablePermission("enableSubstitution");
@@ -196,6 +197,7 @@ public interface ObjectStreamConstants {
* @see java.io.ObjectInputStream#readObjectOverride()
* @since 1.2
*/
+ @SuppressWarnings("removal")
static final SerializablePermission SUBCLASS_IMPLEMENTATION_PERMISSION =
new SerializablePermission("enableSubclassImplementation");
@@ -205,6 +207,7 @@ public interface ObjectStreamConstants {
* @see java.io.ObjectInputFilter.Config#setSerialFilter(ObjectInputFilter)
* @since 9
*/
+ @SuppressWarnings("removal")
static final SerializablePermission SERIAL_FILTER_PERMISSION =
new SerializablePermission("serialFilter");
diff --git a/src/java.base/share/classes/java/io/SerializablePermission.java b/src/java.base/share/classes/java/io/SerializablePermission.java
index 48be2eabf1f71..eb8117bbd8105 100644
--- a/src/java.base/share/classes/java/io/SerializablePermission.java
+++ b/src/java.base/share/classes/java/io/SerializablePermission.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2024, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2025, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -36,7 +36,7 @@
* no actions list; you either have the named permission
* or you don't.
*
- * @apiNote
+ * @deprecated
* This permission cannot be used for controlling access to resources
* as the Security Manager is no longer supported.
*
@@ -51,6 +51,7 @@
/* code was borrowed originally from java.lang.RuntimePermission. */
+@Deprecated(since="25", forRemoval=true)
public final class SerializablePermission extends BasicPermission {
@java.io.Serial
diff --git a/src/java.base/share/classes/java/lang/RuntimePermission.java b/src/java.base/share/classes/java/lang/RuntimePermission.java
index dc158be409f8e..4f5a3d60a7ae7 100644
--- a/src/java.base/share/classes/java/lang/RuntimePermission.java
+++ b/src/java.base/share/classes/java/lang/RuntimePermission.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2024, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2025, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -38,7 +38,7 @@
* An asterisk may appear at the end of the name, following a ".",
* or by itself, to signify a wildcard match. For example: "loadLibrary.*"
* and "*" signify a wildcard match, while "*loadLibrary" and "a*b" do not.
- * @apiNote
+ * @deprecated
* This permission cannot be used for controlling access to resources
* as the Security Manager is no longer supported.
*
@@ -53,6 +53,7 @@
* @since 1.2
*/
+@Deprecated(since="25", forRemoval=true)
public final class RuntimePermission extends BasicPermission {
@java.io.Serial
diff --git a/src/java.base/share/classes/java/lang/reflect/ReflectPermission.java b/src/java.base/share/classes/java/lang/reflect/ReflectPermission.java
index 4910109be32b5..af86c99fa40f0 100644
--- a/src/java.base/share/classes/java/lang/reflect/ReflectPermission.java
+++ b/src/java.base/share/classes/java/lang/reflect/ReflectPermission.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2024, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2025, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -28,7 +28,7 @@
/**
* The Permission class for reflective operations.
*
- * @apiNote
+ * @deprecated
* This permission cannot be used for controlling access to resources
* as the Security Manager is no longer supported.
*
@@ -38,6 +38,7 @@
*
* @since 1.2
*/
+@Deprecated(since="25", forRemoval=true)
public final
class ReflectPermission extends java.security.BasicPermission {
diff --git a/src/java.base/share/classes/java/nio/file/LinkPermission.java b/src/java.base/share/classes/java/nio/file/LinkPermission.java
index e53b6aebc1f20..7a0095b310151 100644
--- a/src/java.base/share/classes/java/nio/file/LinkPermission.java
+++ b/src/java.base/share/classes/java/nio/file/LinkPermission.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2007, 2024, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2025, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -30,12 +30,13 @@
/**
* The {@code Permission} class for link creation operations.
*
- * @apiNote
+ * @deprecated
* This permission cannot be used for controlling access to resources
* as the Security Manager is no longer supported.
*
* @since 1.7
*/
+@Deprecated(since="25", forRemoval=true)
public final class LinkPermission extends BasicPermission {
@java.io.Serial
static final long serialVersionUID = -1441492453772213220L;
diff --git a/src/java.base/share/classes/java/util/PropertyPermission.java b/src/java.base/share/classes/java/util/PropertyPermission.java
index f5c6db0b781ec..85b48359c90f6 100644
--- a/src/java.base/share/classes/java/util/PropertyPermission.java
+++ b/src/java.base/share/classes/java/util/PropertyPermission.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2024, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2025, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -54,7 +54,7 @@
*
* The actions string is converted to lowercase before processing.
*
- * @apiNote
+ * @deprecated
* This permission cannot be used for controlling access to resources
* as the Security Manager is no longer supported.
*
@@ -70,6 +70,7 @@
* @serial exclude
*/
+@Deprecated(since="25", forRemoval=true)
public final class PropertyPermission extends BasicPermission {
/**
@@ -412,6 +413,7 @@ final class PropertyPermissionCollection extends PermissionCollection
* Key is property name; value is PropertyPermission.
* Not serialized; see serialization section at end of class.
*/
+ @SuppressWarnings("removal")
private transient ConcurrentHashMap perms;
/**
@@ -443,6 +445,7 @@ public PropertyPermissionCollection() {
* object has been marked readonly
*/
@Override
+ @SuppressWarnings("removal")
public void add(Permission permission) {
if (! (permission instanceof PropertyPermission pp))
throw new IllegalArgumentException("invalid permission: "+
@@ -487,6 +490,7 @@ public void add(Permission permission) {
* the set, false if not.
*/
@Override
+ @SuppressWarnings("removal")
public boolean implies(Permission permission) {
if (! (permission instanceof PropertyPermission pp))
return false;
@@ -613,6 +617,7 @@ private void writeObject(ObjectOutputStream out) throws IOException {
* perms field. Reads in all_allowed.
*/
@java.io.Serial
+ @SuppressWarnings("removal")
private void readObject(ObjectInputStream in)
throws IOException, ClassNotFoundException
{
diff --git a/src/java.base/share/classes/java/util/concurrent/ForkJoinPool.java b/src/java.base/share/classes/java/util/concurrent/ForkJoinPool.java
index 5c74e653431b6..eac0f5bdc18df 100644
--- a/src/java.base/share/classes/java/util/concurrent/ForkJoinPool.java
+++ b/src/java.base/share/classes/java/util/concurrent/ForkJoinPool.java
@@ -1629,12 +1629,6 @@ final boolean isApparentlyUnblocked() {
*/
private static volatile int poolIds;
- /**
- * Permission required for callers of methods that may start or
- * kill threads. Lazily constructed.
- */
- static volatile RuntimePermission modifyThreadPermission;
-
/**
* For VirtualThread intrinsics
*/
diff --git a/src/java.base/share/classes/jdk/internal/access/JavaIOFilePermissionAccess.java b/src/java.base/share/classes/jdk/internal/access/JavaIOFilePermissionAccess.java
index 48a80ec72a445..ed9f88685d682 100644
--- a/src/java.base/share/classes/jdk/internal/access/JavaIOFilePermissionAccess.java
+++ b/src/java.base/share/classes/jdk/internal/access/JavaIOFilePermissionAccess.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 2025, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -35,6 +35,7 @@ public interface JavaIOFilePermissionAccess {
* @return the new FilePermission plus the alt path (as npath2)
* or the input itself if no alt path is available.
*/
+ @SuppressWarnings("removal")
FilePermission newPermPlusAltPath(FilePermission input);
/**
@@ -44,5 +45,6 @@ public interface JavaIOFilePermissionAccess {
* @return the new FilePermission using the alt path (as npath)
* or null if no alt path is available
*/
+ @SuppressWarnings("removal")
FilePermission newPermUsingAltPath(FilePermission input);
}
diff --git a/src/java.base/share/classes/jdk/internal/access/SharedSecrets.java b/src/java.base/share/classes/jdk/internal/access/SharedSecrets.java
index 8d483507203c3..3ec9d6d4bae8c 100644
--- a/src/java.base/share/classes/jdk/internal/access/SharedSecrets.java
+++ b/src/java.base/share/classes/jdk/internal/access/SharedSecrets.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2002, 2024, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2025, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -287,6 +287,7 @@ public static void setJavaIOFileDescriptorAccess(JavaIOFileDescriptorAccess jiof
javaIOFileDescriptorAccess = jiofda;
}
+ @SuppressWarnings("removal")
public static JavaIOFilePermissionAccess getJavaIOFilePermissionAccess() {
var access = javaIOFilePermissionAccess;
if (access == null) {
diff --git a/src/java.base/share/classes/jdk/internal/jrtfs/JrtFileSystemProvider.java b/src/java.base/share/classes/jdk/internal/jrtfs/JrtFileSystemProvider.java
index c0d3eeab6bdd3..9ee620f41372c 100644
--- a/src/java.base/share/classes/jdk/internal/jrtfs/JrtFileSystemProvider.java
+++ b/src/java.base/share/classes/jdk/internal/jrtfs/JrtFileSystemProvider.java
@@ -67,6 +67,7 @@ public String getScheme() {
/**
* Need RuntimePermission "accessSystemModules" to create or get jrt:/
*/
+ @SuppressWarnings("removal")
private void checkPermission() {
@SuppressWarnings({ "removal", "suppression" })
SecurityManager sm = System.getSecurityManager();
diff --git a/src/java.base/share/classes/sun/net/www/protocol/file/FileURLConnection.java b/src/java.base/share/classes/sun/net/www/protocol/file/FileURLConnection.java
index 8b8908445a96f..97e797040a05a 100644
--- a/src/java.base/share/classes/sun/net/www/protocol/file/FileURLConnection.java
+++ b/src/java.base/share/classes/sun/net/www/protocol/file/FileURLConnection.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1995, 2024, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1995, 2025, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -204,6 +204,7 @@ public synchronized InputStream getInputStream()
/* since getOutputStream isn't supported, only read permission is
* relevant
*/
+ @SuppressWarnings("removal")
public Permission getPermission() throws IOException {
if (permission == null) {
String decodedPath = ParseUtil.decode(url.getPath());
diff --git a/src/java.base/share/classes/sun/security/util/FilePermCompat.java b/src/java.base/share/classes/sun/security/util/FilePermCompat.java
index 72db4eb93bc05..651c84a462bef 100644
--- a/src/java.base/share/classes/sun/security/util/FilePermCompat.java
+++ b/src/java.base/share/classes/sun/security/util/FilePermCompat.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 2025, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -60,6 +60,7 @@ public class FilePermCompat {
}
}
+ @SuppressWarnings("removal")
public static Permission newPermPlusAltPath(Permission input) {
if (compat && input instanceof FilePermission) {
return SharedSecrets.getJavaIOFilePermissionAccess()
@@ -68,6 +69,7 @@ public static Permission newPermPlusAltPath(Permission input) {
return input;
}
+ @SuppressWarnings("removal")
public static Permission newPermUsingAltPath(Permission input) {
if (input instanceof FilePermission) {
return SharedSecrets.getJavaIOFilePermissionAccess()
diff --git a/src/java.base/windows/classes/sun/net/www/protocol/file/UNCFileURLConnection.java b/src/java.base/windows/classes/sun/net/www/protocol/file/UNCFileURLConnection.java
index c36b84aa4dcfa..d5a510d8f317e 100644
--- a/src/java.base/windows/classes/sun/net/www/protocol/file/UNCFileURLConnection.java
+++ b/src/java.base/windows/classes/sun/net/www/protocol/file/UNCFileURLConnection.java
@@ -41,6 +41,7 @@ final class UNCFileURLConnection extends FileURLConnection {
}
@Override
+ @SuppressWarnings("removal")
public Permission getPermission() {
Permission perm = permission;
if (perm == null) {
@@ -49,4 +50,3 @@ public Permission getPermission() {
return perm;
}
}
-
diff --git a/src/java.base/windows/classes/sun/nio/fs/WindowsFileCopy.java b/src/java.base/windows/classes/sun/nio/fs/WindowsFileCopy.java
index 16bb2898a8de8..a561e81536ab5 100644
--- a/src/java.base/windows/classes/sun/nio/fs/WindowsFileCopy.java
+++ b/src/java.base/windows/classes/sun/nio/fs/WindowsFileCopy.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2008, 2024, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2025, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -31,7 +31,6 @@
import java.nio.file.DirectoryNotEmptyException;
import java.nio.file.FileAlreadyExistsException;
import java.nio.file.LinkOption;
-import java.nio.file.LinkPermission;
import java.nio.file.StandardCopyOption;
import java.util.concurrent.ExecutionException;
diff --git a/src/java.logging/share/classes/java/util/logging/LoggingPermission.java b/src/java.logging/share/classes/java/util/logging/LoggingPermission.java
index c48d5ba9f0698..d9cf9b58bbdf1 100644
--- a/src/java.logging/share/classes/java/util/logging/LoggingPermission.java
+++ b/src/java.logging/share/classes/java/util/logging/LoggingPermission.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2024, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2025, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -31,7 +31,7 @@
* This class is for logging permissions. Currently there is only one
* LoggingPermission named "control".
*
- * @apiNote
+ * @deprecated
* This permission cannot be used for controlling access to resources
* as the Security Manager is no longer supported.
*
@@ -45,6 +45,7 @@
*
*/
+@Deprecated(since="25", forRemoval=true)
public final class LoggingPermission extends java.security.BasicPermission {
private static final long serialVersionUID = 63564341580231582L;
diff --git a/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesImpl.java b/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesImpl.java
index 24f10e69853e7..41b83bce5df02 100644
--- a/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesImpl.java
+++ b/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesImpl.java
@@ -438,6 +438,7 @@ public Set findAll() {
* Defines the translet class and auxiliary classes.
* Returns a reference to the Class object that defines the main class
*/
+ @SuppressWarnings("removal")
private void defineTransletClasses()
throws TransformerConfigurationException {