Jestem początkującym w Javie i próbuję uruchomić mój kod za pomocą IntelliJ, który właśnie zainstalowałem jako moje IDE z JDK 1.7. Poniższy fragment kodu nawet się nie kompiluje i ciągle wyświetla mi błąd:
Error: Could not find or load main class libTest
Kod
import java.lang.Integer;
import java.lang.String;
import java.lang.System;
import java.util.*;
class book {
private String name = "trial";
private int bookCode=1;
private int issued=0;
public void Issue(){
if(issued==0) {
issued=1;
System.out.println("You have succesfully issued the book");
}
else {
System.out.println("The book is already issued. Please contact the librarian for further details");
}
}
public int checkCode() {
return bookCode;
}
String readName() {
return name;
}
public void setName(String newName){
name=newName;
}
public void setBookCode(int newCode){
bookCode=newCode;
}
}
class library {
private ArrayList books=new ArrayList();
public void getList(){
for(int bk:books){
String bName=books(bk).readName();
System.out.println((bk+1)+") "+bName);
}
}
}
public class libTest{
public static void main(String[] args){
library newLib= new library();
System.out.println("code working");
}
}
Czy jest jakaś zmiana, którą muszę wprowadzić w ustawieniach kompilatora? Czy jest to kod.
java
compiler-errors
intellij-idea
Zdezorientowany listonosz
źródło
źródło
libTest.java
?import java.lang...
Dzieje się to automatycznie dla klas wlang
pakiecie.Odpowiedzi:
To może pomóc:
1) Menu „Buduj” -> „
Rebuild Project
”. Czasami Intellij nie przepisuje klas, ponieważ one już istnieją, w ten sposób poprosisz Intellij o przepisanie wszystkiego.2) Menu „Uruchom” -> „
Edit configuration
” -> usuń profil -> dodaj ponownie profil („Aplikacja” jeśli jest to aplikacja Java), wybierz swoją główną klasę z menu rozwijanego „Klasa główna”.3) Menu „Buduj” -> „
Rebuild Project
”.źródło
Rebuild Project
pracował dla mnie!"Build" menu -> "Rebuild Project
- wykonał pracę! Dziękirebuild project
zadziałała w moim przypadku. Dziękuję Ci!Jeśli żadna z powyższych odpowiedzi nie zadziałała, po prostu zamknij swoje intelliJ IDE i usuń plik i folder intelliJ IDE z katalogu głównego projektu:
Następnie otwórz projekt za pomocą intelliJ. Teraz musi działać.
źródło
.idea
folderu zawsze rozwiązuje wszystkie problemy z IDE JetBrains :)Dla mnie rozwiązaniem było naprawienie katalogu wyjściowego w ustawieniach projektu. Wcześniej używałem tylko „celu” dla danych wyjściowych kompilatora projektu. Zamiast tego zaktualizowałem go, aby miał pełną ścieżkę, np. D: \ dev \ sigplusjava2_68 \ target
źródło
Rebuild Project
robi.Miałem ten problem i próbowałem wszystkiego pod słońcem, o czym mogłem pomyśleć i na tej stronie.
Żadna z moich klas Java nie została pobrana po ściągnięciu ze zdalnej gałęzi. Wszystkie klasy miały czerwone litery J przy nazwach w hierarchii projektu, a nie niebieskie litery C.
W końcu spróbowałem postępować zgodnie z tym samouczkiem i kilka kroków wypróbowałem coś nieopisanego i naprawiłem problem: https://www.jetbrains.com/help/idea/creating-and-managing-modules.html
Oto co zrobiłem:
Z jakiegoś powodu wszystkie moje zajęcia miały wtedy niebieskie C.
Ktoś, kto lepiej rozumie, w jaki sposób IntelliJ i / lub IDE mogą być w stanie wyjaśnić to zjawisko, ale jedyne, co wiem, to to, że teraz może zobaczyć wszystkie klasy, a co ważniejsze, główną i uruchomić.
źródło
Jawne utworzenie
out
folderu, a następnie ustawienie ścieżki wyjściowej naC:\Users\USERNAME\IdeaProjects\PROJECTNAME\out
wydawało się działać dla mnie, gdy tylko
out
i spodziewając się, że IntelliJ sprawi, że folder nie będzie.Spróbuj także poprosić IntelliJ o utworzenie nowej konfiguracji uruchamiania:
Znajdź poprzednią, klikając
następnie go usuń
i dobrze.
Teraz (WAŻNY KROK) otwórz klasę zawierającą twoją główną metodę. Najłatwiej to zrobić, klikając nazwę klasy w okienku projektu po lewej stronie.
Daj mu Alt+ Shift+ F10i powinieneś dostać
Teraz hit Enter!!
Ta dah?? (Zadziałało?)
źródło
main()
funkcję zclass Main
klasy do innej. W takim przypadku edytuj konfigurację uruchamiania, jak pokazano powyżej, i zmień wartość „Main class” na nazwę swojej klasy (w pełni kwalifikowana).Unieważnij pamięć podręczną i zrestartuj swój intellij, zadziałało dla mnie.
źródło
Wiem, że zadawano to jakiś czas temu, ale właśnie potykałem się o ten problem i pomyślałem, że moje odkrycia mogą pomóc innym. Jak wskazano, komunikat o błędzie jest w zasadzie wynikiem folderu out. Dzieje się tak dlatego, że kiedy próbujesz uruchomić program, najpierw kompiluje on kod i umieszcza skompilowany wynik w lokalizacji wyjściowej, a następnie próbuje załadować skompilowany kod z lokalizacji wyjściowej. Jeśli skompilowany kod nie znajduje się w oczekiwanej lokalizacji, zostanie wyświetlony błąd.
Szczególnie chciałbym podzielić się tym, że czasami kod nie jest kompilowany (budowany), mimo że konfiguracja uruchamiania określa opcję „Kompiluj” w sekcji „Przed uruchomieniem” panelu konfiguracyjnego.
Kiedy to się może stać? Jedna sytuacja, która może to spowodować, to sytuacja, gdy używasz modułów i ręcznie usuwasz katalog wyjściowy modułu. Na przykład, jeśli mam moduł o nazwie „foo”, w out / production powinien znajdować się katalog o nazwie foo. Jeśli usuniesz go ręcznie, system kompilacji może nie wiedzieć, że należy go odbudować.
Co gorsza, jeśli wybierzesz opcję Build | Zbuduj moduł 'foo', nadal może nie odbudować modułu. W takim przypadku należy wybrać plik w module, na przykład „bar.java”, a następnie wybrać opcję Build | Ponownie skompiluj „bar.java”. Teraz katalog out / production / foo powinien zostać przywrócony.
Ponieważ IntelliJ zazwyczaj wie o wszelkich zmianach, które zachodzą, zaskoczyło mnie to i zajęło mi trochę czasu, aby się zorientować, więc pomyślałem, że się podzielę.
źródło
Sprawdź moduł swojej klasy : napotkałem ten problem z intellij: Mam projekt wielomodułowy Mavena, problem polega na tym, że uruchamiam klasę, która nie istnieje w module w konfiguracji, więc mój problem jest naprawiany przez ustawienie odpowiedniego modułu ( "edytuj konfigurację" -> "użyj klasy modułu")
niech ci to pomoże
źródło
Musiałem oznaczyć folder „src” jako „Źródła”. Po ponownym uruchomieniu IntelliJ i przebudowie projektu mogłem uruchomić projekt bez dalszych problemów (patrz zrzut ekranu ). Edycja: Możesz uzyskać dostęp do zakładki "Struktura projektu" poprzez Plik-> Struktura projektu lub naciskając Ctrl + Shift + Alt + S.
źródło
Otwórz kartę Moduły (naciśnij Ctrl + Shift + Alt + S). Miałem dwa moduły w ramach jednego projektu. Rozwiązałem problem po usunięciu drugiego nadmiarowego modułu (patrz zrzut ekranu).
źródło
Z takimi problemami miałem do czynienia, gdy klasa znajduje się w folderze domyślnym, czyli gdy klasa nie deklaruje pakietu.
Więc myślę, że użycie instrukcji pakietu (np.
package org.me.mypackage;
) Na górze klasy powinno to naprawić.źródło
package org.confused.mailman;
org/confused/mailman
dodanie tej linii pakietu nie pomoże.Plik> Struktura projektu> Moduły> Oznacz folder „src” jako źródła. To powinno rozwiązać problem. Sprawdź również, czy wybrany jest najnowszy język, aby nie musieć zmieniać kodu ani dokonywać żadnych zmian konfiguracyjnych.
źródło
W moim przypadku problem wydawał się być związany z aktualizacją IntelliJ. Kiedy to zrobiłem, nadpisałem pliki ze starego IntelliJ na pliki z nowego IntelliJ (społeczność 2017 do społeczności 2018). Potem wszystkie moje projekty zostały zerwane. Próbowałem wszystkiego w tym wątku i żaden z nich nie działał. Próbowałem zaktualizować Gradle do najnowszej wersji (4 do 4.8) i to nie zadziałało. Jedyną rzeczą, która działała dla mnie, było usunięcie całego folderu IntelliJ i ponowna instalacja. Wszystkie moje projekty działały później.
źródło
idea\bin
na,idea_old\bin
i zmieniłem nazwę folderu ustawień, w%user%\username
którym ma.IntelliJIdea2018.2
być.IntelliJIdea2018.2_old
ponownie rozpakowany plik zip intellij, aby zacząć używać go jako świeżej nowej wersji przenośnej (to jest wersja 2018.2.1) ze Spring Aplikacja rozruchowa składająca się z wielu oddzielnych modułów (nie połączonych w pojedynczym nadrzędnym pom.xml), każdy z nich jest aplikacją rozruchową wiosenną z własnym pom.xml i voila !!! Wszystkie prace, utworzony folder docelowy, kompilacja przed uruchomieniem deski rozdzielczej rozruchu wiosny.Oznacz katalog jako katalog źródłowy. Otwierane za pomocą Ctrl + Shift + Alt + S
źródło
Jak dla mnie - wypróbowałem kilka z powyższych opcji, nie działały. Potem właśnie zmieniłem nazwę mojej klasy Application i prawdopodobnie zmusiło to intelliJ do zbudowania nowego pliku jar, a komunikat o błędzie zaczął się zmieniać. Potem zmieniłem nazwę z powrotem i zadziałało.
źródło
Wypróbowałem wszystkie sugerowane tutaj hacki - bezskutecznie. Na koniec po prostu utworzyłem nową aplikację Maven i ręcznie skopiowałem do niej - jeden po drugim - pliki i zasoby pom.xml oraz java. Teraz wszystko działa. Jestem nowy w IntelliJ i nie jestem pod wrażeniem, ale jak łatwo jest wprowadzić go w niestabilny stan.
źródło
modules.xml z niewłaściwą zawartością, nie wiem, co jest z moim POMYSŁEM.
źródło
Odziedziczyłem kilka plików .JAVA z innego miejsca i nie mogłem wymyślić, jak zmusić je do pracy w żadnym IDE. Ostatecznie musiałem przejść do wiersza poleceń, w którym był plik Main.JAVA i uruchomić
javac Main.java
. Stworzyło to kilka plików .CLASS. IDE były wtedy w stanie wymyślić, co zrobić.źródło
Otrzymałem ten błąd podczas używania Scala / SBT . IntelliJ nie mógł znaleźć głównej klasy, mimo że wszystko zostało skonfigurowane poprawnie. Moje rozwiązanie: usuń
<user>/.sbt/<version>/plugins/target
folder, a następnie uruchom ponownie IntelliJ.źródło
Używam IntelliJ w Spring, a moja główna klasa jest zapakowana w JAR. Musiałem zaznaczyć „Uwzględnij zależności z zakresem„ Dostarczony ”” w oknie dialogowym Uruchom / Debuguj konfigurację
źródło
Jesteśmy w strukturze pliku / projektu. Odpowiedź może brzmieć:
Folder określony jako „główny katalog zawartości” wymaga folderu podrzędnego, w którym znajduje się kod. Dodatkowo znajdź przycisk oznaczający kod jako wykluczony, a nie. Nie należy mylić z polem wyboru, które stwierdza wykluczenie bez informowania, w jakiej fazie i w jakiej fazie ** Czy kompilator wyklucza czy wyklucza w czasie wykonywania? Jesteś skazany na test i dużo. Więc nie to pole wyboru, ale ikony i kolory.
Jako pomysł musimy sprawdzić, jak pierwotnie miał działać. Nigdy nie sprawili, że zadziałało na pierwszym miejscu i zaczęli dodawać rzeczy w stylu przedwczesnej kodakulacji. Minęło tyle lat i nie można oczekiwać żadnej poprawy. Ale jako lekarstwo możemy znaleźć sposób, aby za każdym razem zrobić to dobrze.
źródło
Inną rzeczą, którą możesz tutaj sprawdzić, jest faktyczna komenda przekazywana do maszyny JVM i upewnij się, że wygląda dobrze. Przewiń do góry konsoli Run, powinna to być pierwsza linia.
Spacje w polu Opcje maszyny wirtualnej Uruchom konfigurację spowodują nieprawidłowy format polecenia uruchamiania aplikacji i mogą spowodować wyświetlenie tego komunikatu o błędzie
źródło
Opracowywanie rozwiązania Brada Turka ... Jeden z domyślnych szablonów projektów IntelliJ Java wymaga pliku o nazwie Main definiującego klasę Main i punkt wejścia metody main () . Jeśli metoda znajduje się w innym pliku (i klasie), Zmień Run konfigurację :
Uruchom okno konfiguracji
Jak zauważyli inni, musisz odbudować używając nowej konfiguracji. Używam pakietu, ale wydaje się, że nie robi różnicy IME. Mam nadzieję że to pomoże.
źródło
W moim przypadku w pliku build.gradle modułu przypisanie mainClassName musi zawierać pełną nazwę klasy, tj. jak określono jako nazwę pakietu w pliku kodu źródłowego klasy głównej.
źródło
Po prostu przebuduj projekt (CTRL + F9) i dwukrotnie sprawdź (Edytuj konfiguracje), czy masz poprawnie ustawioną klasę główną i moduł (jeśli istnieje)
źródło
Prostym rozwiązaniem jest przejście do folderu kopii zapasowej w wierszu poleceń, w którym znajduje się folder główny projektu. Powinieneś mieć zainstalowany SBT w swoim komputerze.
Jeśli masz zainstalowany sbt, uruchom polecenie "sbt pakiet", to zrekompiluje projekt, jeśli się powiedzie, wróć do intelliJ, który będzie działał.
źródło
W moim przypadku skonfigurowałem (stosunkowo) długie argumenty maszyny wirtualnej. Konwersja tych argumentów (jeśli to możliwe) na zmienne środowiskowe rozwiązała problem
źródło
W moim przypadku aplikacja działa dobrze, gdy kod początkowo znajdował się w katalogu / src w projekcie. Później dodałem katalog / main / java po katalogu / src, po czym wystąpił błąd „Nie można znaleźć lub załadować klasy głównej ...”. W tym czasie nie można było dodać /src/main/java/YourMain.java do konfiguracji uruchamiania. To, co zrobiłem, to usunąć konfigurację uruchamiania, a następnie kliknąć prawym przyciskiem myszy projekt -> Otwórz ustawienia modułu (lub F4 po kliknięciu panelu Projekt) -> Ustawienia projektu -> Moduły usuń (x) stary katalog główny zawartości i + dodaj katalog główny zawartości, wybierz / src / main / java. Odbuduj projekt i zacznie działać.
źródło
Prawdopodobnie określiłeś niewłaściwy pakiet, a hierarchia pakietów byłaby nieprawidłowa. Zobacz poniżej
W takim przypadku ide wskazywałby na niewłaściwą ścieżkę.
źródło
W moim przypadku, jest to projekt Maven, ja ponownie przywiezione Maven (prawy przycisk myszy na pom.xml plik i kliknij ponownie importować ) to zadziałało natychmiast.
źródło