Jak zainportować bibliotekę w import.java.

0

Witam,na początku chciałem zaznaczyć,że Javy uczę się w szkole dopiero kilka dni.Wcześniej przeszliśmy całe C++,dlatego owy problem może wydawać Wam się błahy. Mianowicie poszukuję programu,który wyszukuje plik po nazwie i zwraca ścieżkę.W C++ jest to trudne do osiągnięcia,a w necie są gotowce do Javy.Mam taki,ale jak próbuje kompilować go w NetBeans, kompilator wyrzuca mi błąd,że biblioteki nie są znane.
Skąd ściągnąć poniższe biblioteki i jak je dodać do kompilatora?

import java.io.;
import java.nio.file.
;
import java.nio.file.attribute.;
import static java.nio.file.FileVisitResult.
;
import static java.nio.file.FileVisitOption.;
import java.util.
;

Autor podaje taki komentarz:
/*
http://download.oracle.com/javase/tutorial/essential/io/fileOps.html#glob
*/

0

Ty pobrałeś w ogóle JDK?

0

Tak JDK 6 Update 5

0

Jeśli zainstalowałeś JDK to już pierwszy krok masz za sobą. Teraz trzeba ustawić ścieżki dostępu. Prawy klawisz na Mój komputer przechodzisz na zakładkę Zaawansowane -> Zmienne Środowiskowe masz zmienną Patch tam na sam koniec musisz dodać ścieżkę dostępu: C:\Program Files\Java...\bin; C:\Program Files\Java...\jre\lib\ext*jar; takie są one w moim przypadku. W wierszu poleceń wpisz javac jeśli dostaniesz informacje o opcjach polecenia to jest oki jeśli nie to trzeba poprawić. Po tej operacji nie będzie problemu z importem. Dodam tylko, że ja używam XP.

0

Dzięki Piotr.Też mam XP.Co mam dać w miejsce kropek?
Bo mam foldery:
jdk1.6.0_05
jdk1.6.0_18
jdk1.6.0_23
jre1.6.0_05
jre6

???
**
//EDIT: Dałem domyślnie jdk1.6.0_23 i jak wpisuje cmd/javac to wyświetlają mi się opcje**

poza tym mam taki program:

[code]
import java.io.;
import java.nio.file.
;
import java.nio.file.attribute.;
import static java.nio.file.FileVisitResult.
;
import static java.nio.file.FileVisitOption.;
import java.util.
;

public class Find {

public static class Finder extends SimpleFileVisitor<Path> {
    private final PathMatcher matcher;
    private int numMatches = 0;

    Finder(String pattern) {
        matcher = FileSystems.getDefault().getPathMatcher("glob:" + pattern);
    }

    //Compares the glob pattern against the file or directory name.
    void find(Path file) {
        Path name = file.getFileName();
        if (name != null && matcher.matches(name)) {
            numMatches++;
            System.out.println(file);
        }
    }

    //Prints the total number of matches to standard out.
    void done() {
        System.out.println("Matched: " + numMatches);
    }

    //Invoke the pattern matching method on each file.
    @Override
    public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) {
        find(file);
        return CONTINUE;
    }

    //Invoke the pattern matching method on each directory.
    @Override
    public FileVisitResult preVisitDirectory(Path dir, BasicFileAttributes attrs) {
        find(dir);
        return CONTINUE;
    }

    @Override
    public FileVisitResult visitFileFailed(Path file, IOException exc) {
        System.err.println(exc);
        return CONTINUE;
    }
}

static void usage() {
    System.err.println("java Find <path> -name \"<glob_pattern>\"");
    System.exit(-1);
}

public static void main(String[] args) throws IOException {

    if (args.length < 3 || !args[1].equals("-name"))
        usage();

    Path startingDir = Paths.get(args[0]);
    String pattern = args[2];

    Finder finder = new Finder(pattern);
    Files.walkFileTree(startingDir, finder);
    finder.done();
}

}
[/code]

I jak widać kod ten nie ma funkcji main()
Czy mam dać ten kod pomiędzy klamry main() , a wszystkie "importy" nad funkcję main() zaraz po package???

Gdy próbuje kompilować ten kod wpisany w NetBeans tak jak wyżej pisze:
[code]
run:
java.lang.NoClassDefFoundError: javaapplication16/Main
Caused by: java.lang.ClassNotFoundException: javaapplication16.Main
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: javaapplication16.Main. Program will exit.
Exception in thread "main" Java Result: 1
BUILD SUCCESSFUL (total time: 0 seconds)
[/code]

Jeżeli daje go pomiędzy klamry main(), a importy ponad main() pisze
[code]
run:
java.lang.ExceptionInInitializerError
Caused by: java.lang.RuntimeException: Uncompilable source code - package java.nio.file does not exist
at javaapplication17.Main.<clinit>(Main.java:10)
Could not find the main class: javaapplication17.Main. Program will exit.
Exception in thread "main" Java Result: 1
BUILD SUCCESSFUL (total time: 0 seconds)
[/code]

0

Przecież masz metodę main, nie masz klasy Main. Zmień klasę główną na Find (ppm na projekt -> Properties -> Run -> w polu Main Class wpisz nazwę klasy).

1 użytkowników online, w tym zalogowanych: 0, gości: 1