JEP 330では、Java で単一ファイルのプログラムを起動するための JDK 11 の新機能について説明しています。私はもう試した:
$ ./Example.java
しかし、うまくいきません。正しい使い方は?
$ java Example.java data.txt
または ( #!
):
$ ./example data.txt
ここでの作業例。
ファイル内の行を出力する単一ファイル プログラムを考えてみましょう。
import java.nio.file.*;
import java.util.stream.Stream;
public class ExampleJDK11 {
public static void main(String[] args) throws Exception {
// snip ... print file args[0]
}
}
Example.java
コードが にあり、それjava
が にあると仮定すると、PATH
使用法は次のようになります。
java Example.java data.txt
javac
(!)コードがファイル にありexample
、先頭に「shebang」行があるとします。
#!/Users/measter/tools/jdk-11.jdk/Contents/Home/bin/java --source 8
import java.nio.file.*;
import java.util.stream.Stream;
// as above
使用法は次のとおりです。
./example data.txt