FULL PRODUCT VERSION :
java 9.0.4
Java(TM) SE Runtime Environment (build 9.0.4+11)
Java HotSpot(TM) 64-Bit Server VM (build 9.0.4+11, mixed mode)
ADDITIONAL OS VERSION INFORMATION :
Ubuntu 16.04 LTS
A DESCRIPTION OF THE PROBLEM :
When I try to access any class in jar files JShell crashes.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Run Jshell with jar in class-path for example:
jshell --class-path /home/victor/.m2/repository/com/google/guava/guava/18.0/guava-18.0-sources.jar
Run snippet that access classes in this jar:
com.google.common.collect.Lists.class
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
S1 ==> class com.google.common.collect.Lists.class
ACTUAL -
Exception in thread "main" java.lang.ClassCastException: jdk.compiler/com.sun.tools.javac.file.PathFileObject$JarFileObject cannot be cast to jdk.jshell/jdk.jshell.MemoryFileManager$SourceMemoryJavaFileObject
at jdk.jshell/jdk.jshell.TaskFactory$WrapSourceHandler.diag(TaskFactory.java:181)
at jdk.jshell/jdk.jshell.TaskFactory$BaseTask.diag(TaskFactory.java:370)
at jdk.jshell/jdk.jshell.TaskFactory$BaseTask.getDiagnostics(TaskFactory.java:404)
at jdk.jshell/jdk.jshell.Eval.processExpression(Eval.java:339)
at jdk.jshell/jdk.jshell.Eval.sourceToSnippets(Eval.java:178)
at jdk.jshell/jdk.jshell.Eval.eval(Eval.java:111)
at jdk.jshell/jdk.jshell.JShell.eval(JShell.java:493)
at jdk.jshell/jdk.internal.jshell.tool.JShellTool.processCompleteSource(JShellTool.java:2937)
at jdk.jshell/jdk.internal.jshell.tool.JShellTool.processSource(JShellTool.java:2925)
at jdk.jshell/jdk.internal.jshell.tool.JShellTool.processSourceCatchingReset(JShellTool.java:1182)
at jdk.jshell/jdk.internal.jshell.tool.JShellTool.run(JShellTool.java:1162)
at jdk.jshell/jdk.internal.jshell.tool.JShellTool.start(JShellTool.java:929)
at jdk.jshell/jdk.internal.jshell.tool.JShellToolBuilder.run(JShellToolBuilder.java:239)
at jdk.jshell/jdk.internal.jshell.tool.JShellToolProvider.main(JShellToolProvider.java:119)
ERROR MESSAGES/STACK TRACES THAT OCCUR :
Exception in thread "main" java.lang.ClassCastException: jdk.compiler/com.sun.tools.javac.file.PathFileObject$JarFileObject cannot be cast to jdk.jshell/jdk.jshell.MemoryFileManager$SourceMemoryJavaFileObject
at jdk.jshell/jdk.jshell.TaskFactory$WrapSourceHandler.diag(TaskFactory.java:181)
at jdk.jshell/jdk.jshell.TaskFactory$BaseTask.diag(TaskFactory.java:370)
at jdk.jshell/jdk.jshell.TaskFactory$BaseTask.getDiagnostics(TaskFactory.java:404)
at jdk.jshell/jdk.jshell.Eval.processExpression(Eval.java:339)
at jdk.jshell/jdk.jshell.Eval.sourceToSnippets(Eval.java:178)
at jdk.jshell/jdk.jshell.Eval.eval(Eval.java:111)
at jdk.jshell/jdk.jshell.JShell.eval(JShell.java:493)
at jdk.jshell/jdk.internal.jshell.tool.JShellTool.processCompleteSource(JShellTool.java:2937)
at jdk.jshell/jdk.internal.jshell.tool.JShellTool.processSource(JShellTool.java:2925)
at jdk.jshell/jdk.internal.jshell.tool.JShellTool.processSourceCatchingReset(JShellTool.java:1182)
at jdk.jshell/jdk.internal.jshell.tool.JShellTool.run(JShellTool.java:1162)
at jdk.jshell/jdk.internal.jshell.tool.JShellTool.start(JShellTool.java:929)
at jdk.jshell/jdk.internal.jshell.tool.JShellToolBuilder.run(JShellToolBuilder.java:239)
at jdk.jshell/jdk.internal.jshell.tool.JShellToolProvider.main(JShellToolProvider.java:119)
REPRODUCIBILITY :
This bug can be reproduced always.
java 9.0.4
Java(TM) SE Runtime Environment (build 9.0.4+11)
Java HotSpot(TM) 64-Bit Server VM (build 9.0.4+11, mixed mode)
ADDITIONAL OS VERSION INFORMATION :
Ubuntu 16.04 LTS
A DESCRIPTION OF THE PROBLEM :
When I try to access any class in jar files JShell crashes.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Run Jshell with jar in class-path for example:
jshell --class-path /home/victor/.m2/repository/com/google/guava/guava/18.0/guava-18.0-sources.jar
Run snippet that access classes in this jar:
com.google.common.collect.Lists.class
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
S1 ==> class com.google.common.collect.Lists.class
ACTUAL -
Exception in thread "main" java.lang.ClassCastException: jdk.compiler/com.sun.tools.javac.file.PathFileObject$JarFileObject cannot be cast to jdk.jshell/jdk.jshell.MemoryFileManager$SourceMemoryJavaFileObject
at jdk.jshell/jdk.jshell.TaskFactory$WrapSourceHandler.diag(TaskFactory.java:181)
at jdk.jshell/jdk.jshell.TaskFactory$BaseTask.diag(TaskFactory.java:370)
at jdk.jshell/jdk.jshell.TaskFactory$BaseTask.getDiagnostics(TaskFactory.java:404)
at jdk.jshell/jdk.jshell.Eval.processExpression(Eval.java:339)
at jdk.jshell/jdk.jshell.Eval.sourceToSnippets(Eval.java:178)
at jdk.jshell/jdk.jshell.Eval.eval(Eval.java:111)
at jdk.jshell/jdk.jshell.JShell.eval(JShell.java:493)
at jdk.jshell/jdk.internal.jshell.tool.JShellTool.processCompleteSource(JShellTool.java:2937)
at jdk.jshell/jdk.internal.jshell.tool.JShellTool.processSource(JShellTool.java:2925)
at jdk.jshell/jdk.internal.jshell.tool.JShellTool.processSourceCatchingReset(JShellTool.java:1182)
at jdk.jshell/jdk.internal.jshell.tool.JShellTool.run(JShellTool.java:1162)
at jdk.jshell/jdk.internal.jshell.tool.JShellTool.start(JShellTool.java:929)
at jdk.jshell/jdk.internal.jshell.tool.JShellToolBuilder.run(JShellToolBuilder.java:239)
at jdk.jshell/jdk.internal.jshell.tool.JShellToolProvider.main(JShellToolProvider.java:119)
ERROR MESSAGES/STACK TRACES THAT OCCUR :
Exception in thread "main" java.lang.ClassCastException: jdk.compiler/com.sun.tools.javac.file.PathFileObject$JarFileObject cannot be cast to jdk.jshell/jdk.jshell.MemoryFileManager$SourceMemoryJavaFileObject
at jdk.jshell/jdk.jshell.TaskFactory$WrapSourceHandler.diag(TaskFactory.java:181)
at jdk.jshell/jdk.jshell.TaskFactory$BaseTask.diag(TaskFactory.java:370)
at jdk.jshell/jdk.jshell.TaskFactory$BaseTask.getDiagnostics(TaskFactory.java:404)
at jdk.jshell/jdk.jshell.Eval.processExpression(Eval.java:339)
at jdk.jshell/jdk.jshell.Eval.sourceToSnippets(Eval.java:178)
at jdk.jshell/jdk.jshell.Eval.eval(Eval.java:111)
at jdk.jshell/jdk.jshell.JShell.eval(JShell.java:493)
at jdk.jshell/jdk.internal.jshell.tool.JShellTool.processCompleteSource(JShellTool.java:2937)
at jdk.jshell/jdk.internal.jshell.tool.JShellTool.processSource(JShellTool.java:2925)
at jdk.jshell/jdk.internal.jshell.tool.JShellTool.processSourceCatchingReset(JShellTool.java:1182)
at jdk.jshell/jdk.internal.jshell.tool.JShellTool.run(JShellTool.java:1162)
at jdk.jshell/jdk.internal.jshell.tool.JShellTool.start(JShellTool.java:929)
at jdk.jshell/jdk.internal.jshell.tool.JShellToolBuilder.run(JShellToolBuilder.java:239)
at jdk.jshell/jdk.internal.jshell.tool.JShellToolProvider.main(JShellToolProvider.java:119)
REPRODUCIBILITY :
This bug can be reproduced always.