< prev index next >
src/jdk.jshell/share/classes/jdk/internal/jshell/tool/JShellTool.java
Print this page
*** 38,47 ****
--- 38,50 ----
import java.io.Reader;
import java.io.StringReader;
import java.lang.module.ModuleDescriptor;
import java.lang.module.ModuleFinder;
import java.lang.module.ModuleReference;
+ import java.net.MalformedURLException;
+ import java.net.URI;
+ import java.net.URL;
import java.nio.charset.Charset;
import java.nio.file.FileSystems;
import java.nio.file.Files;
import java.nio.file.InvalidPathException;
import java.nio.file.Path;
*** 2997,3011 ****
regenerateOnDeath = false;
scanner = new Scanner(cmdin);
} else {
Path path = toPathResolvingUserHome(filename);
String resource;
! scanner = new Scanner(
! (!Files.exists(path) && (resource = getResource(filename)) != null)
! ? new StringReader(resource) // Not found as file, but found as resource
! : new FileReader(path.toString())
! );
}
run(new ScannerIOContext(scanner));
return true;
} catch (FileNotFoundException e) {
errormsg("jshell.err.file.not.found", context, filename, e.getMessage());
--- 3000,3021 ----
regenerateOnDeath = false;
scanner = new Scanner(cmdin);
} else {
Path path = toPathResolvingUserHome(filename);
String resource;
! if (Files.exists(path)) {
! scanner = new Scanner(new FileReader(path.toString()));
! } else if ((resource = getResource(filename)) != null) {
! scanner = new Scanner(new StringReader(resource));
! } else {
! try {
! var url = new URL(filename);
! scanner = new Scanner(url.openStream());
! } catch (MalformedURLException mue) {
! throw new FileNotFoundException(filename);
! }
! }
}
run(new ScannerIOContext(scanner));
return true;
} catch (FileNotFoundException e) {
errormsg("jshell.err.file.not.found", context, filename, e.getMessage());
< prev index next >