diff --git a/org.eclipse.jdt.core/model/org/eclipse/jdt/core/IClasspathEntry.java b/org.eclipse.jdt.core/model/org/eclipse/jdt/core/IClasspathEntry.java
index 8f7769e..2946d65 100644
--- a/org.eclipse.jdt.core/model/org/eclipse/jdt/core/IClasspathEntry.java
+++ b/org.eclipse.jdt.core/model/org/eclipse/jdt/core/IClasspathEntry.java
@@ -154,13 +154,6 @@
 	int CPE_CONTAINER = 5;
 
 	/**
-	 * Entry kind constant describing a jrt - jimage 
-	 *
-	 * @since 3.11
-	 */
-	int CPE_JIMAGE = 6;
-
-	/**
 	 * Returns whether the access rules of the project's exported entries should be combined with this entry's access rules.
 	 * Returns true for container entries.
 	 * Returns false otherwise.
diff --git a/org.eclipse.jdt.core/model/org/eclipse/jdt/core/JavaCore.java b/org.eclipse.jdt.core/model/org/eclipse/jdt/core/JavaCore.java
index f9b47b9..5f52f30 100644
--- a/org.eclipse.jdt.core/model/org/eclipse/jdt/core/JavaCore.java
+++ b/org.eclipse.jdt.core/model/org/eclipse/jdt/core/JavaCore.java
@@ -4749,36 +4749,6 @@
 	}
 
 	/**
-	 * Creates and returns a new classpath entry of kind <code>CPE_JIMAGE</code> for the jimage
-	 * identified by the given absolute path. 
-	 * <p>
-	 *
-	 * @param path the path to the jimage
-	 * @return a new jimage classpath entry
-	 * @since 3.11
-	 */
-	public static IClasspathEntry newJimageEntry(
-			IPath path) {
-
-		if (path == null) throw new ClasspathEntry.AssertionFailedException("Jimage path cannot be null"); //$NON-NLS-1$
-		boolean hasDotDot = ClasspathEntry.hasDotDot(path);
-		if (!hasDotDot && !path.isAbsolute()) throw new ClasspathEntry.AssertionFailedException("Path for IClasspathEntry must be absolute: " + path); //$NON-NLS-1$
-		return new ClasspathEntry(
-			IPackageFragmentRoot.K_BINARY,
-			IClasspathEntry.CPE_JIMAGE,
-			hasDotDot ? path : JavaProject.canonicalizedPath(path),
-			ClasspathEntry.INCLUDE_ALL, // inclusion patterns
-			ClasspathEntry.EXCLUDE_NONE, // exclusion patterns
-			null,//sourceAttachmentPath,
-			null,//sourceAttachmentRootPath,
-			null, // specific output folder
-			true,//isExported,
-			null,//accessRules,
-			false, // no access rules to combine
-			null //extraAttributes
-			);
-	}
-	/**
 	 * Creates and returns a new non-exported classpath entry of kind <code>CPE_PROJECT</code>
 	 * for the project identified by the given absolute path.
 	 * <p>
