Ich arbeite gerade aus, wie man Java von der Kommandozeile kompiliert. Hier ist, was ich habe:Paket java.nio.file existiert nicht
Hier ist, was ich habe:
/myjava/compile.cmd /myjava/src/a_pack/HelloWorld.java /myjava/src/b_pack/Inner.java /myjava/src/b_pack/Inner2.java /myjava/bin
Hello World:
package a_pack; import b_pack.Inner; import b_back.Inner2; import java.util.ArrayList; import java.util.Iterator; public class HelloWorld { public static void main(String[] args) { System.out.println("Hello, World"); Inner myInner = new Inner(); myInner.myInner(); Inner2 myInner2 = new Inner2(); myInner2.myInner(); ArrayList myArray = new ArrayList(); myArray.add(1); myArray.add(2); myArray.add(3); Iterator itr = myArray.iterator(); while (itr.hasNext()) { System.out.println(itr.next()); } } }
Inner.java
package b_pack; public class Inner { public void myInner() { System.out.println("Inner Method"); } }
Inner2.java
package b_pack; public class Inner2 { public void myInner() { System.out.println("SecondInner"); } }
Ich kompiliere dies mit javac -d bin -sourcepath -src src/a_pack/HelloWorld.java
und das funktioniert gut.
Jetzt ist mein Verständnis, dass, weil die HelloWorld.java die anderen Pakete in ihren import-Anweisungen verweist, dann geht javac und kompiliert diese. Und ich vermute, dass für alle Java-Pakete, javac intern oder so etwas hat.
Wie dem auch sei - wenn ich die folgende Zeile importieren zu HelloWorld.java hinzufügen
import java.nio.file.Files
;
es nicht mit
D:\.....\myjava>javac -d bin -sourcepath src src/a_pack/HelloWo rld.java src\a_pack\HelloWorld.java:8: package java.nio.file does not exist import java.nio.file.Files; ^ 1 error
Was hier die Geschichte ist? Warum sind einige Java-Pakete gut und manche nicht?
NIO wurde in Java 7 eingeführt. Welche Version von Java verwenden? – Reimeus
@Reimeus Das JDK, das ich benutze, das javac enthält, ist jdk1.6.0_32. – dwjohnston
Da ist deine Antwort. Sie müssen auf JDK 7 aktualisieren. – Reimeus