--Je veux tester avec une version spécifique de JVM
À ce moment-là, il est plus facile d'utiliser l'image Docker de JVM.
$ cat Hoge.java
public class Moge {
public static void main(String[] args) {
System.out.println("hoge");
}
}
$ docker run --rm -it --volume `pwd`:/tmp adoptopenjdk/openjdk11-openj9 java /tmp/Hoge.java
hoge
Exécutez-vous java sans compiler? -> JEP330 Java11: exécuter le code Java dans un seul fichier tel quel Java 11 vous permet d'exécuter des fichiers Java sans javac
Référence Essayez différents JDK avec Docker AdoptOpenJDK https://adoptopenjdk.net Image Docker officielle https://hub.docker.com/u/adoptopenjdk/
$ docker run --rm -it --volume `pwd`:/tmp adoptopenjdk/openjdk11-openj9 /bin/sh -c 'for i in `seq 1 10`; do java -jar /tmp/MDTest.jar |grep -v dig; done' | awk '{sum+=$3} END {print "avg="sum/NR}'
avg=26.1
jshell --Je souhaite exécuter rapidement un traitement (écrit) en Java --Je ne veux pas écrire de classes et main, c'est compliqué à compiler et à exécuter
À ce moment-là, jshell est pratique. Si vous disposez de Docker, vous pouvez l'utiliser rapidement, même dans un environnement sans Java 9 ou version ultérieure.
$ docker run --rm -it adoptopenjdk/openjdk11-openj9 jshell
Nov 16, 2018 12:00:26 PM java.util.prefs.FileSystemPreferences$1 run
INFO: Created user preferences directory.
| Welcome to JShell -- Version 11.0.1
| For an introduction type: /help intro
jshell> System.out.println("moge")
moge
jshell> java.time.Instant.ofEpochMilli(1294012469700l);
$1 ==> 2011-01-02T23:54:29.700Z
jshell>
Eh bien, comment écrivez-vous une ligne?
[Comment écrire un script one-liner en Java JShell (et FizzBuzz code golf)] (http://sucrose.hatenablog.com/entry/2018/05/05/230434)
Je vois!
$ echo 'println("hello, world!")' | docker run --rm -it adoptopenjdk/openjdk11-openj9 jshell PRINTING -
the input device is not a TTY
cette? Ah.
$ echo 'println("hello, world!")' | docker run --rm -i adoptopenjdk/openjdk11-openj9 jshell PRINTING -
Nov 16, 2018 3:12:46 PM java.util.prefs.FileSystemPreferences$1 run
INFO: Created user preferences directory.
hello, world!
Je mets quoi que ce soit.
Référence Java commençant par JShell-Looking into the world of Java Jouez avec Java2D en utilisant JShell [Nouvelles fonctionnalités Java9] Premiers pas avec jshell
Recommended Posts