• Java
    • JAXB Tutorial
      • What is JAXB
      • JAXB Marshalling Example
      • JAXB UnMarshalling Example
  • Spring Tutorial
    • Spring Core Tutorial
    • Spring MVC Tutorial
      • Quick Start
        • Flow Diagram
        • Hello World Example
        • Form Handling Example
      • Handler Mapping
        • BeanNameUrlHandlerMapping
        • ControllerClassNameHandlerMapping
        • SimpleUrlHandlerMapping
      • Validation & Exception Handling
        • Validation+Annotations
        • Validation+ResourceBundle
        • @ExceptionHandler
        • @ControllerAdvice
        • Custom Exception Handling
      • Form Tag Library
        • Textbox Example
        • TextArea Example
        • Password Example
        • Dropdown Box Example
        • Checkboxes Example
        • Radiobuttons Example
        • HiddenValue Example
      • Misc
        • Change Config file name
    • Spring Boot Tutorial
  • Hibernate Tutorial
  • REST Tutorial
    • JAX-RS REST @PathParam Example
    • JAX-RS REST @QueryParam Example
    • JAX-RS REST @DefaultValue Example
    • JAX-RS REST @Context Example
    • JAX-RS REST @MatrixParam Example
    • JAX-RS REST @FormParam Example
    • JAX-RS REST @Produces Example
    • JAX-RS REST @Consumes Example
    • JAX-RS REST @Produces both XML and JSON Example
    • JAX-RS REST @Consumes both XML and JSON Example
  • Miscellaneous
    • JSON Parser
      • Read a JSON file
      • Write JSON object to File
      • Read / Write JSON using GSON
      • Java Object to JSON using JAXB
    • CSV Parser
      • Read / Write CSV file
      • Read/Parse/Write CSV File – OpenCSV
      • Export data into a CSV File
      • CsvToBean and BeanToCsv – OpenCSV

JavaInterviewPoint

Java Development Tutorials

Java 9 – jdeprscan

April 9, 2018 by javainterviewpoint Leave a Comment

jdeprscan tool can be used as a static analyzing tool which scans the Class / JAR file for the usage of deprecated API. jdeprscan tool identifies the deprecated APIs which defined by Java SE Deprecated APIs, third-party libraries will not be identified.

Syntax for jdeprscan

jdeprscan [ options ] {dir|jar|class}

Options for jdeprscan

—class-path PATH – Search Path for the classes to be searched

–full-version            – Prints the version of the jdeprscan tool

— release 6|7|8|9    – Uses the specified Java version and lists out the deprecated API

–list (or) –l               – Prints the list of all deprecated API ( We should not provide any dir or jar or class as no scanning is done)

–help (or) -h            – Displays the help message

–for-removal          – Limits scanning or listing to APIs that are deprecated for removal.

–verbose (or) -v     – Enables additional message output during processing

Arguments for jdeprscan

  • dir: Directory
  • jar: JAR file
  • class: Class name or class file

jdeprscan Tool Example

Let’s try scan the below class and find out how the jdeprscan works

public class DeprecationTest
{
    public static void main(String[] args)
    {
        Integer i = new Integer(1);
        System.out.println(i);
    }
}

output:

c:\JIP>jdeprscan "DeprecationTest.class"
class DeprecationTest uses deprecated method java/lang/Integer::(I)V

Version specific jdeprscan

jdeprscan can also scan the code based on the previous JDK releases (JDK 8, 7, and 6), let’s say you are currently running with JDK 9 and you want to validate your code with JDK 8, it is also possible in jdeprscan using the –release option

Java 7
c:\JIP>jdeprscan --release 7 "C:\jdk1.5.0_08\lib\htmlconverter.jar"
warning: unknown enum constant javax.jws.WebParam.Mode.IN
warning: unknown enum constant javax.jws.soap.SOAPBinding.Use.LITERAL
warning: unknown enum constant javax.annotation.Resource.AuthenticationType.CONTAINER
Jar file C:\jdk1.5.0_08\lib\htmlconverter.jar:
class sun/plugin/converter/gui/ConverterGUI uses deprecated method java/awt/Dialog::show()V

Java 8

c:\JIP>jdeprscan --release 8 "C:\jdk1.5.0_08\lib\htmlconverter.jar"
warning: unknown enum constant javax.jws.WebParam.Mode.IN
warning: unknown enum constant javax.jws.soap.SOAPBinding.Use.LITERAL
warning: unknown enum constant javax.annotation.Resource.AuthenticationType.CONTAINER
Jar file C:\jdk1.5.0_08\lib\htmlconverter.jar:
class sun/plugin/converter/gui/ConverterGUI uses deprecated method java/awt/Dialog::show()V

Java 9

c:\JIP>jdeprscan --release 9 "C:\jdk1.5.0_08\lib\htmlconverter.jar"
Jar file C:\jdk1.5.0_08\lib\htmlconverter.jar:
class sun/plugin/converter/engine/PluginConverter uses deprecated method java/lang/Integer::(Ljava/lang/String;)V
class sun/plugin/converter/gui/ConverterGUI uses deprecated method java/awt/Dialog::show()V
class sun/plugin/converter/resources/Converter uses deprecated method java/lang/Integer::(I)V
class sun/plugin/converter/resources/Converter_de uses deprecated method java/lang/Integer::(I)V
class sun/plugin/converter/resources/Converter_es uses deprecated method java/lang/Integer::(I)V
class sun/plugin/converter/resources/Converter_fr uses deprecated method java/lang/Integer::(I)V
class sun/plugin/converter/resources/Converter_it uses deprecated method java/lang/Integer::(I)V
class sun/plugin/converter/resources/Converter_ja uses deprecated method java/lang/Integer::(I)V
class sun/plugin/converter/resources/Converter_ko uses deprecated method java/lang/Integer::(I)V
class sun/plugin/converter/resources/Converter_sv uses deprecated method java/lang/Integer::(I)V
class sun/plugin/converter/resources/Converter_zh_CN uses deprecated method java/lang/Integer::(I)V
class sun/plugin/converter/resources/Converter_zh_HK uses deprecated method java/lang/Integer::(I)V
class sun/plugin/converter/resources/Converter_zh_TW uses deprecated method java/lang/Integer::(I)V

Other interesting articles which you may like …

  • Multiple Inheritance in Java 8 through Interface
  • Java 8 Default Methods in Interface
  • Java 8 ForEach Example
  • JVM Architecture – Understanding JVM Internals
  • Object and Object Class in Java
  • Difference between JDK, JRE and JVM
  • Components of Java Development Kit (JDK)
  • What is a Class in Java with Example
  • How to open .class file in Java
  • How to Set Classpath for Java in Windows
  • ClassNotFoundException Vs NoClassDefFoundError In Java
  • How HashMap works in Java
  • How to make a class Immutable in Java
  • Polymorphism in Java – Method Overloading and Overriding
  • Types of polymorphism in java
  • Types of Inheritance in Java
  • Why Java does not supports Multiple Inheritance – Diamond Problem?
  • Java Method Overloading Example
  • Java Constructor Overloading Example
  • Java this keyword | Core Java Tutorial
  • Java super keyword

Filed Under: Core Java, Java Tagged With: java 9, jdeprscan, jdeprscan tool

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Java Basics

  • JVM Architecture
  • Object in Java
  • Class in Java
  • How to Set Classpath for Java in Windows
  • Components of JDK
  • Decompiling a class file
  • Use of Class.forName in java
  • Use Class.forName in SQL JDBC

Oops Concepts

  • Inheritance in Java
  • Types of Inheritance in Java
  • Single Inheritance in Java
  • Multiple Inheritance in Java
  • Multilevel Inheritance in Java
  • Hierarchical Inheritance in Java
  • Hybrid Inheritance in Java
  • Polymorphism in Java – Method Overloading and Overriding
  • Types of Polymorphism in java
  • Method Overriding in Java
  • Can we Overload static methods in Java
  • Can we Override static methods in Java
  • Java Constructor Overloading
  • Java Method Overloading Example
  • Encapsulation in Java with Example
  • Constructor in Java
  • Constructor in an Interface?
  • Parameterized Constructor in Java
  • Constructor Chaining with example
  • What is the use of a Private Constructors in Java
  • Interface in Java
  • What is Marker Interface
  • Abstract Class in Java

Java Keywords

  • Java this keyword
  • Java super keyword
  • Final Keyword in Java
  • static Keyword in Java
  • Static Import
  • Transient Keyword

Miscellaneous

  • newInstance() method
  • How does Hashmap works internally in Java
  • Java Ternary operator
  • How System.out.println() really work?
  • Autoboxing and Unboxing Examples
  • Serialization and Deserialization in Java with Example
  • Generate SerialVersionUID in Java
  • How to make a class Immutable in Java
  • Differences betwen HashMap and Hashtable
  • Difference between Enumeration and Iterator ?
  • Difference between fail-fast and fail-safe Iterator
  • Difference Between Interface and Abstract Class in Java
  • Difference between equals() and ==
  • Sort Objects in a ArrayList using Java Comparable Interface
  • Sort Objects in a ArrayList using Java Comparator

Follow

  • Coding Utils

Useful Links

  • Spring 4.1.x Documentation
  • Spring 3.2.x Documentation
  • Spring 2.5.x Documentation
  • Java 6 API
  • Java 7 API
  • Java 8 API
  • Java EE 5 Tutorial
  • Java EE 6 Tutorial
  • Java EE 7 Tutorial
  • Maven Repository
  • Hibernate ORM

About JavaInterviewPoint

javainterviewpoint.com is a tech blog dedicated to all Java/J2EE developers and Web Developers. We publish useful tutorials on Java, J2EE and all latest frameworks.

All examples and tutorials posted here are very well tested in our development environment.

Connect with us on Facebook | Privacy Policy | Sitemap

Copyright ©2023 · Java Interview Point - All Rights Are Reserved ·