2017-02-03 20 views
17

Próbowałem każde rozwiązanie online, a ja wciąż dostać ten sam result..i'm próbuje dostać mój kod do uruchomienia na pliku „distinct.txt” i tu jest moja próba uruchomienia.przekierowanie wejścia w Javie - Nie można odnaleźć lub załadować głównej klasy

here is my try

Próbowałem różnych ścieżek i wszystkie dają ten sam rezultat.

tutaj jest mój kod

package pset2.sol; 
import edu.princeton.cs.algs4.StdIn; 
public class Permutation { 
public static void main(String[] args){ 
    RandomizedQueue<String> rq = new RandomizedQueue<>(); 
    while (!StdIn.isEmpty()) { 
     String item = StdIn.readString(); 
     rq.enqueue(item); 
    } 
    int k = Integer.parseInt(args[0]); 
    for(int i = 0; i < k; i++){ 
     System.out.println(rq.dequeue()); 
    } 
} 
} 
+2

Dodaj kod jako tekst.nie jako obrazek – Jens

+0

Najpierw musisz skompilować plik java, I musisz uruchomić go z folderu, który zawiera folder pet2 – Jens

+1

@Jens Nie dodaję zdjęcia do kodu dodałem je, aby pokazać to, co napisałem terminal, ale tutaj jest mój kod i tak http://pastebin.com/QznjZ44d .. czy możesz mi powiedzieć, jak go najpierw skompilować? i już uruchomiłem go przez folder, który zawiera pset2, który jest "produkcją". Jestem początkujący, więc może mi brakować zrozumienia pewnych rzeczy –

Odpowiedz

22

Domyślam się, że źródło, folder nie jest prawidłowo ustawiony.

Wypróbuj plik -> Struktura projektu -> Moduły -> (zakładka) Źródła -> Oznacz jako: Źródła.

Naprawiono problem po zaimportowaniu projektu Eclipse.

1

Najlepiej zawsze używać zielonego przycisku z IntellIJ. Możesz ustawić Edycja Konfiguracji, aby podać ścieżkę do pliku. Nie wiem jednak o przeczytaniu w pliku ze stdin.


Twoim problemem nie jest IntelliJ, ale to CMD.

Najpierw upewnij się, że jesteś we właściwym folderze.

Uruchom cd /path/to/compiled_files, aby zobaczyć, że jesteś rodzicem folderu pset.

pset 
    /sol2 
     Permutation.class 

Następnie będziesz prawdopodobnie potrzebował ścieżkę klas mieć inne zajęcia w ramach pakietu pset.sol2 zostać rozwiązane.

java -cp . pset.sol2.Permutation 

Więcej szczegółów: What does "Could not find or load main class" mean?

13

Musisz upewnić się, że wartość „Projekt wyjście kompilator” jest ustawiony w Project Structure > Project i że kompilatora punkty wyjściowe modułu do ważnej drogi:

enter image description here enter image description here

+1

Wygląda na to, że ścieżka musi być ścieżką w pełni kwalifikowaną, a nie względną. – 4myle

+0

To dziwne, ale naprawdę pomogło mi rozwiązać mój problem – agurylev

0

trochę późno na imprezę tutaj, ale okazało się, że mój plik główny (w pliku źródłowym), brakowało „.java” rozszerzenie, mimo że plik wyglądał dobrze w eksploratorze projektu intelliJ.

na ścisłej kontroli, zauważyłem jednak, że typ pliku w/out/nie był plik klasy (to znaczy nie mają niebieskie kółko z literą „C” w).

myślę, że to może być dlatego, że stworzył „main” w moim folderze plik źródłowy, zanim ten folder oznaczony jako źródła w ustawieniach projektu, a typ pliku tworzony był niezdefiniowany jakoś ...

Aby poprawiono, zmieniłem nazwę pliku głównego na Main.java (w wyszukiwarce), i przebudowałem projekt z menu kompilacji.